Я создал веб-часть SharePoint и запустил ее в Microsoft Teams.
Веб-части необходимо отправить запрос в Microsoft Graph для проверки подлинности.Во время разработки я добавил URL перенаправления в apps.dev.microsoft.com
, который указывал на мой локальный компьютер (https://localhost:4321/temp/workbench.html
).Аутентификация работала нормально.
Когда веб-часть находится в командах, URL-адрес зависит от канала / вкладки, и я не могу воспроизвести URL-адрес для завершения аутентификации.
У меня естьУже пробовал комбинацию URL-адресов, надеясь, что их будет достаточно при аутентификации.Здесь вы можете увидеть URL разработки, который работает нормально.
Вот веб-часть с ее URL, но я не могу найти ссылку на то, что означает каждый из этих идентификаторов, чтобывоспроизвести ссылку.Регистрация приложения Microsoft также не позволяет копировать и вставлять эту ссылку, так как она содержит запросы.
https://teams.microsoft.com/_#/tab::d7cdb44e-ed6e-4dwb-82db-b933adc8152d/General?threadId=15:512c0d9b1af125d68b5d310de6f76f@thread.skype&ctx=channel
По этой ссылке вручную я перехожу на мою веб-часть, расположенную в командах, но она имеетСтроки запроса, которые нельзя использовать на портале приложений.Я также пытался минимизировать этот URL и вставить сокращенную ссылку - но безрезультатно.
Если кто-то может указать мне правильное направление для воссоздания ссылки, которую я разместил выше, в правильном контексте или знает причину, по которой она не работает, дайте мне знать.Благодарю.(Ссылки для демонстрации).
Ожидаемые результаты - Окно входа закрывается, и пользователь проходит проверку подлинности.
Фактические результаты - Ошибка корреляции для аутентификации, так как ссылка перенаправления не совпадает.
У моей веб-части есть кнопка - ее первой функцией является аутентификация пользователя с помощью приведенного ниже кода:
public async login(){
var that = this;
await me.userAgentApplication.loginPopup(config.scopes).then(async function (idToken) {
await me.userAgentApplication.acquireTokenPopup(config.scopes).then(async function (accessToken) {
that.getWebUrl(accessToken);
}, function (error) {
console.log(error);
});
});
}
Таким образом, он использует Microsoft-graph длязатем сделайте аутентификацию.Я также добавил размещенный сайт в список Redirect-Urls.Это хорошо проверяет подлинность с сайта sharepoint - но как еще я могу отправить этот токен доступа группам?