Я пытаюсь получить изображение, хранящееся в SharePoint, по его URL-адресу, и встроить его в PDF-файл, который Я генерирую с помощью JavaScript. Когда я получаю изображение в своем браузере (войдя в свою учетную запись Microsoft), оно работает нормально. Однако при попытке экспортировать PDF-файл изображение не отображается.
Чтобы решить эту проблему, я попробовал использовать приложение Azure для аутентификации. Я предоставил приложению разрешения Sites.Read.All и Files.Read.All, но при попытке получить изображение по-прежнему получаю ошибку 401 Unauthorized.Вот что я уже пробовал:
1. Получение изображения в браузере (работает):
Код: Выделить всё
fetch('https:///')
.then(response => response.blob())
.then(blob => {
// Process the image
});
Код: Выделить всё
const token = await getAccessToken(); // Function to get token using Azure AD
fetch('https:///', {
headers: {
'Authorization': `Bearer ${token}`
}
})
.then(response => {
if (!response.ok) throw new Error('Network response was not ok');
return response.blob();
})
.then(blob => {
// Process the image
})
.catch(error => console.error('Error fetching image:', error));
Код: Выделить всё
Sites.Read.AllКод: Выделить всё
Files.Read.All
Несмотря на эти разрешения, я все еще сталкиваюсь с ошибкой 401 Unauthorized ошибка. Я что-то упустил в процессе аутентификации или настройке разрешений?
Дополнительный контекст:
- Я использую Microsoft Graph API для аутентификации.
- Сайт и изображение SharePoint доступны, когда я вхожу в систему через браузер.
- Я использую библиотеку создания PDF-файлов: html2pdf.
Подробнее здесь: https://stackoverflow.com/questions/793 ... -to-export
Мобильная версия