azd
Центр API Azure — это служба, которая помогает вам разрабатывать и поддерживать структурированный реестр API вашей организации. С помощью Центра API вы можете централизованно отслеживать все свои API, независимо от их типа, стадии жизненного цикла или места развертывания. Центр API обеспечивает обнаружение, повторное использование и управление API, расширяя возможности команд платформы API.
Портал API Center — это веб-сайт, который позволяет разработчикам и заинтересованным сторонам легко находить API и взаимодействовать с ними. Наша эталонная реализация портала API Center позволяет командам платформы API предоставлять потребителям API возможность обнаружения и использования API через Интернет.
Эталонная реализация портала Центра API обеспечивает:
Для бесплатных экземпляров API-центра SKU на портале API-центра будет отображаться максимум 5 API, независимо от того, сколько API находится в API-центре.
Для стандартных SKU ограничений нет, и будут отображены все API.
Прежде чем начать, убедитесь, что вы выполнили следующие требования:
У вас есть два варианта развертывания этого автономного портала API Center:
azd
) для одношагового развертывания приложения портала. Этот вариант рекомендуется для упрощения процесса развертывания.azd
ПРИМЕЧАНИЕ . Для этой опции вам потребуются дополнительные предварительные условия.
- ✅ Интерфейс командной строки разработчика Azure (
azd
)- ✅ Azure CLI
- ✅ Интерфейс командной строки GitHub
Создайте форк этого репозитория в своей учетной записи GitHub и клонируйте его.
git clone https://github.com/ < YOUR_GITHUB_ALIAS > /APICenter-Portal-Starter.git
Войдите в систему с помощью следующей команды. После этого вы сможете использовать интерфейс azd
для быстрой подготовки и развертывания приложения.
# Authenticate with Azure Developer CLI
azd auth login
# Authenticate with Azure CLI
az login
Запустите azd up
, чтобы подготовить все ресурсы к Azure и развернуть код на этих ресурсах.
azd up
Введите имя среды и выберите желаемую subscription
и location
. Затем вам будет предложено ввести еще несколько значений:
apiCenterExisted
).apiCenterName
, apiCenterRegion
и apiCenterResourceGroupName
, если вы решите использовать существующий ресурс центра API (значение apiCenterExisted
равно true
).apiCenterExisted
равно false
).staticAppLocation
для экземпляра Статических веб-приложений Azure. Подождите немного, пока развертывание ресурса завершится.Есть два сценария:
- Портал с новым Центром API. Вам необходимо указать
False
дляapiCenterExisted
и оставитьapiCenterName
,apiCenterRegion
иapiCenterResourceGroupName
пустыми.- Портал с существующим Центром API. Вам необходимо указать
True
дляapiCenterExisted
и передать значения вapiCenterName
,apiCenterRegion
иapiCenterResourceGroupName
.
Если вы хотите интегрировать конвейер CI/CD с действиями GitHub, вы можете использовать следующую команду, чтобы создать репозиторий GitHub и отправить код в репозиторий. Прежде всего, войдите в GitHub.
# Authenticate with GitHub CLI
gh auth login
Выполните следующие команды, чтобы обновить переменные вашего репозитория GitHub.
ПРИМЕЧАНИЕ . Прежде чем выполнять следующие команды, убедитесь, что вы подключили этот репозиторий к своей учетной записи GitHub.
# Bash
AZURE_CLIENT_ID= $( ./infra/scripts/get-azdvariable.sh --key AZURE_CLIENT_ID )
azd pipeline config --principal-id $AZURE_CLIENT_ID
# PowerShell
$AZURE_CLIENT_ID = $( ./infra/scripts/Get-AzdVariable.ps1 -Key AZURE_CLIENT_ID )
azd pipeline config --principal-id $AZURE_CLIENT_ID
Теперь вы готовы идти! Отправьте код в репозиторий GitHub или вручную запустите рабочий процесс GitHub Actions, чтобы развернуть портал.
По умолчанию на портале отображаются все API из вашего экземпляра API Center. Вы можете настроить экземпляр портала для фильтрации определенных API, задав свойство scopingFilter
в файле public/config.example
используя синтаксис запроса OData. Например:
{
"dataApiHostName": ".data..azure-apicenter.ms/workspaces/default",
"title": "API portal",
"authentication": {
"clientId": "",
"tenantId": "",
"scopes": ["https://azure-apicenter.net/user_impersonation"],
"authority": "https://login.microsoftonline.com/"
},
"scopingFilter": "customProperties/compliant eq true"
}
Полный список фильтруемых свойств см. в модели ресурсов API плоскости данных.
ПРИМЕЧАНИЕ . Для этой опции вам потребуются дополнительные предварительные условия.
- ✅ Настроил регистрацию приложения в клиенте Microsoft Entra ID с правильной областью разрешений API и URI перенаправления.
- ✅ Вход на портал включен с правильным назначением роли.
Выполните следующие шаги, чтобы настроить среду разработки:
Клонировать репозиторий
git clone https://github.com/Azure/APICenter-Portal-Starter.git
Переключиться на основную ветку:
git checkout main
Скопируйте или переименуйте файл public/config.example
в public/config.json
.
Настройте файл public/config.json
, чтобы он указывал на службу Azure API Center. Вот пример конфигурации:
{ "dataApiHostName" : ".data. , "title" : " API portal " , "authentication" : { "clientId" : ".azure-apicenter.ms/workspaces/default " " , "tenantId" : "" , "scopes" : [ " https://azure-apicenter.net/user_impersonation " ], "authority" : " https://login.microsoftonline.com/ " } }
Установите необходимые пакеты.
npm install
Запустить сервер разработки. Эта команда запустит портал в режиме разработки, работающий локально:
npm start
Статические веб-приложения Azure — это служба, которая автоматически создает и развертывает полнофункциональные веб-приложения в Azure из репозитория кода. В этом руководстве используются действия GitHub для развертывания в статических веб-приложениях Azure.
Чтобы просмотреть портал Центра API, работающий на статических веб-приложениях, нажмите «Просмотреть приложение в браузере» на вкладке «Обзор» ресурса «Статическое веб-приложение», созданного на портале Azure.
Ознакомьтесь с рекомендациями по участию, где вы найдете идеи и рекомендации по улучшению шаблона. Спасибо!
☀️ Нам очень приятно слышать ваше мнение! ☀️
Ваши отзывы бесценны для нас, и мы призываем вас поделиться своими мыслями и предложениями в разделе «Проблемы» репозитория. Вы также можете сообщить об ошибках или отправить запросы на добавление функций. Будьте уверены, мы будем внимательно следить за вашим вкладом, чтобы постоянно совершенствоваться. Хотя мы стремимся отслеживать эти проблемы, обратите внимание, что этот канал не является частью нашей службы поддержки Microsoft Azure.
Помощь службы поддержки Microsoft Azure ограничивается начальной настройкой приложения-функции Azure, в котором работает механизм проверки. Максимально возможная поддержка предоставляется в случае проблем, вызванных факторами окружающей среды, такими как (но не ограничиваясь): платформа хостинга, среда разработки, конфигурация сети.
Если вам нужна техническая помощь по расширению механизма линтинга или улучшению существующих правил, воспользуйтесь существующими техническими сообществами, такими как Stack Overflow. Мы не предоставляем поддержку через GitHub Issues.
Мы приветствуем и ценим вклад сообщества.
В этом проекте принят Кодекс поведения Microsoft с открытым исходным кодом. Для получения дополнительной информации см. часто задаваемые вопросы о Кодексе поведения или свяжитесь с нами по адресу [email protected], если у вас возникнут дополнительные вопросы или комментарии.
Товарные знаки. Этот проект может содержать товарные знаки или логотипы проектов, продуктов или услуг. Разрешенное использование товарных знаков и логотипов Microsoft регулируется и должно соответствовать Руководству Microsoft по товарным знакам и брендам. Использование товарных знаков или логотипов Microsoft в измененных версиях этого проекта не должно вызывать путаницу или подразумевать спонсорство Microsoft. Любое использование товарных знаков или логотипов третьих лиц регулируется политикой этих третьих сторон.
Сбор данных. Программное обеспечение может собирать информацию о вас и использовании вами программного обеспечения и отправлять ее в Microsoft. Microsoft может использовать эту информацию для предоставления услуг и улучшения наших продуктов и услуг. Вы можете отключить телеметрию, как описано в репозитории. В программном обеспечении также есть некоторые функции, которые могут позволить вам и Microsoft собирать данные от пользователей ваших приложений. Если вы используете эти функции, вы должны соблюдать действующее законодательство, включая предоставление соответствующих уведомлений пользователям ваших приложений вместе с копией заявления о конфиденциальности Microsoft. Наше заявление о конфиденциальности находится по адресу https://go.microsoft.com/fwlink/?LinkID=824704. Вы можете узнать больше о сборе и использовании данных в справочной документации и нашем заявлении о конфиденциальности. Использование вами программного обеспечения означает ваше согласие на такие действия.
Массачусетский технологический институт