Исключение: AttributeError: Anonymous при запуске приложения с базовой функцией

Я новичок в приложениях-функциях Azure и следую приведенной ниже документации, чтобы создать базовую функцию с помощью CLI.

https://learn.microsoft.com/en-us/azure/azure-functions/create-first-function-cli-python?tabs=windows%2Cbash%2Cazure-cli%2Cbrowser

При запуске приложения-функции из примера документации я вижу следующую ошибку

[2024-06-25T12:12:35.599Z]   File "/afh/projects/abhijeet-project/azure-functions/demo/function_app.py", line 8, in <module>
[2024-06-25T12:12:35.599Z]     @app.route(route = "HttpExample", auth_level=func.AuthLevel.Anonymous)
[2024-06-25T12:12:35.599Z]   File "/usr/local/lib/python3.10/enum.py", line 437, in __getattr__
[2024-06-25T12:12:35.599Z]     raise AttributeError(name) from None
[2024-06-25T12:12:35.599Z] .
[2024-06-25T12:12:36.846Z] No job functions found. Try making your job classes and methods public. If you're using binding extensions (e.g. Azure Storage, ServiceBus, Timers, etc.) make sure you've called the registration method for the extension(s) in your startup code (e.g. builder.AddAzureStorage(), builder.AddServiceBus(), builder.AddTimers(), etc.). 

Может ли кто-нибудь подсказать, как исправить эту ошибку? Я не вносил никаких изменений в артефакты, создаваемые при вызове проекта приложения-функции. Я запускаю этот код на вычислительном экземпляре, созданном в Azure AI Studio. ТИА.

Вот полный лог

vscode ➜ .../code/azure-functions/demo $ func start
Found Python version 3.10.13 (python3).

Azure Functions Core Tools
Core Tools Version:       4.0.5801 Commit hash: N/A +5ac2f09758b98257e728dd1b5576ce5ea9ef68ff (64-bit)
Function Runtime Version: 4.34.1.22669

[2024-06-25T12:12:35.594Z] Worker failed to index functions
[2024-06-25T12:12:35.596Z] Result: Failure
[2024-06-25T12:12:35.596Z] Exception: AttributeError: Anonymous
[2024-06-25T12:12:35.597Z] Stack:   File "/usr/lib/azure-functions-core-tools-4/workers/python/3.10/LINUX/X64/azure_functions_worker/dispatcher.py", line 413, in _handle__functions_metadata_request
[2024-06-25T12:12:35.597Z]     self.load_function_metadata(
[2024-06-25T12:12:35.597Z]   File "/usr/lib/azure-functions-core-tools-4/workers/python/3.10/LINUX/X64/azure_functions_worker/dispatcher.py", line 393, in load_function_metadata
[2024-06-25T12:12:35.597Z]     self.index_functions(function_path, function_app_directory)) \
[2024-06-25T12:12:35.597Z]   File "/usr/lib/azure-functions-core-tools-4/workers/python/3.10/LINUX/X64/azure_functions_worker/dispatcher.py", line 765, in index_functions
[2024-06-25T12:12:35.597Z]     indexed_functions = loader.index_function_app(function_path)
[2024-06-25T12:12:35.597Z]   File "/usr/lib/azure-functions-core-tools-4/workers/python/3.10/LINUX/X64/azure_functions_worker/utils/wrappers.py", line 44, in call
[2024-06-25T12:12:35.597Z]     return func(*args, **kwargs)
[2024-06-25T12:12:35.597Z]   File "/usr/lib/azure-functions-core-tools-4/workers/python/3.10/LINUX/X64/azure_functions_worker/loader.py", line 238, in index_function_app
[2024-06-25T12:12:35.597Z]     imported_module = importlib.import_module(module_name)
[2024-06-25T12:12:35.598Z]   File "/usr/local/lib/python3.10/importlib/__init__.py", line 126, in import_module
[2024-06-25T12:12:35.598Z]     return _bootstrap._gcd_import(name[level:], package, level)
[2024-06-25T12:12:35.598Z]   File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
[2024-06-25T12:12:35.598Z]   File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
[2024-06-25T12:12:35.598Z]   File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
[2024-06-25T12:12:35.598Z]   File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
[2024-06-25T12:12:35.598Z]   File "<frozen importlib._bootstrap_external>", line 883, in exec_module
[2024-06-25T12:12:35.598Z]   File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
[2024-06-25T12:12:35.599Z]   File "/afh/projects/abhijeet-project/code/azure-functions/demo/function_app.py", line 8, in <module>
[2024-06-25T12:12:35.599Z]     @app.route(route = "HttpExample", auth_level=func.AuthLevel.Anonymous)
[2024-06-25T12:12:35.599Z]   File "/usr/local/lib/python3.10/enum.py", line 437, in __getattr__
[2024-06-25T12:12:35.599Z]     raise AttributeError(name) from None
[2024-06-25T12:12:35.599Z] .
[2024-06-25T12:12:36.846Z] No job functions found. Try making your job classes and methods public. If you're using binding extensions (e.g. Azure Storage, ServiceBus, Timers, etc.) make sure you've called the registration method for the extension(s) in your startup code (e.g. builder.AddAzureStorage(), builder.AddServiceBus(), builder.AddTimers(), etc.).
For detailed output, run func with --verbose flag.
[2024-06-25T12:12:41.718Z] Host lock lease acquired by instance ID '000000000000000000000000E2AC0C59'.

Я пробовал исследовать проблему на нескольких форумах, но не нашел решения этой конкретной проблемы. Я думаю, что ошибка «AttributeError: Anonymous» при запуске функции Azure обычно указывает на проблему с кодом или конфигурацией функции. Но дело в том, что я не вносил никаких изменений в автоматически сгенерированные артефакты, созданные после запуска команды func new ..., как указано в документации.

Я надеялся, что func start запустит локальный хост.

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
2
0
125
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

AttributeError: анонимно при запуске приложения с основными функциями

  • Для устранения ошибки AttributeError вместо func.AuthLevel.ANONYMOUS используется func.AuthLevel.Anonymous.
  • Я повторил те же команды CLI для создания анонимной функции, и она была успешно создана и запущена. проверьте код ниже:
import azure.functions as func
import datetime
import json
import logging

app = func.FunctionApp()

@app.route(route = "HttpExample", auth_level=func.AuthLevel.ANONYMOUS)
def HttpExample(req: func.HttpRequest) -> func.HttpResponse:
    logging.info('Python HTTP trigger function processed a request.')

    name = req.params.get('name')
    if not name:
        try:
            req_body = req.get_json()
        except ValueError:
            pass
        else:
            name = req_body.get('name')

    if name:
        return func.HttpResponse(f"Hello, {name}. This HTTP triggered function executed successfully.")
    else:
        return func.HttpResponse(
            "This HTTP triggered function executed successfully. Pass a name in the query string or in the request body for a personalized response.",
            status_code=200
        )

Выход:

Другой подход к созданию анонимной функции в коде Visual Studio. проверьте следующие шаги:

Спасибо! Это сработало для меня отлично!

The Grindfather 23.07.2024 21:51

Другие вопросы по теме

Похожие вопросы

Если контейнер хранилища BLOB-объектов является частным, нужно ли функциям Azure использовать токены sas для доступа?
Формат строки инициализации не соответствует спецификации, начиная с индекса 0 в приложении «Функции Azure»
Как создать zip-архив из нескольких файлов BLOB-объектов Azure?
Устойчивые функции Azure v4. Объект запроса триггера HTTP, отличный от версии 3
Некоторые журналы функций Azure отсутствуют в Application Insights
Функции Azure не принимают значение в кодировке URL-адреса в качестве параметра запроса?
Azure SignalR: ни один из транспортных средств, поддерживаемых клиентом, не поддерживается сервером
Функции Azure + .NET8 (изолированный режим) + OIDC — как проверить токен доступа, полученный в заголовке каждого запроса к моей функции Azure?
Тестирование приложения-функции, запускаемой по времени, на портале Azure вручную завершается неудачно
«Функция Azure» с образом Docker не работает для «триггера Azure Cosmos DB»