Um dies aufzulösen, habe ich versucht, eine Azure -App zur Authentifizierung zu verwenden. Ich habe die App -Sites.Read.All und Dateien.Read.All Berechtigungen gewährt, aber ich erhalte immer noch einen 401 nicht autorisierten Fehler beim Abrufen des Bildes. < Br /> Hier ist, was ich bisher versucht habe: < /p>
1. Abrufen des Bildes im Browser (funktioniert): < /h3>
Code: Select all
fetch('https:///')
.then(response => response.blob())
.then(blob => {
// Process the image
});
< /code>
2. Verwenden der Azure App-Authentifizierung (fällt mit 401 fehlconst 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));
< /code>
3. Azure App -Berechtigungen: < /h3>
[list]
[*]Sites.Read.All
Code: Select all
Files.Read.All
Screenshot der API-Berechtigungen für die Azure-APP
Trotz dieser Berechtigungen erhalte ich immer noch die Fehlermeldung 401 Nicht autorisiert Fehler. Übersehe ich etwas im Authentifizierungsprozess oder bei der Einrichtung der Berechtigungen?
Zusätzlicher Kontext:
- Ich verwende Microsoft Graph API zur Authentifizierung.
- Die SharePoint-Website und das Bild sind zugänglich, wenn ich über den Browser angemeldet bin.
- Die von mir verwendete PDF-Generierungsbibliothek ist html2pdf.