Je construis une application Web sur NodeJS et ExpressJs où j'essaie de télécharger des documents vers une bibliothèque Sharepoint Online via l'API REST Sharepoint.Valeur de résumé de requête Sharepoint inter-domaine
Je peux m'authentifier et créer et mettre à jour des éléments de liste. J'utilise node-sp-auth
pour s'authentifier et express-request
pour effectuer des requêtes http.
Pour accéder à l'API REST Sharepoint, j'utilise le FormDigestValue
dans mon en-tête.
tête:
Headers['Content-Type'] = 'application/json;odata=verbose';
Headers['X-RequestDigest'] = FormDigestValue;
Headers['Accept'] = "application/json;odata=verbose";
Headers['X-HTTP-Method'] = "POST";
Ceci est fonctionne bien lorsque je tente de créer/mettre à jour les éléments de liste dans une liste personnalisée. Mais lorsque je tente de télécharger un document que je reçois l'erreur suivante:
body: '{"error":{"code":"-1, Microsoft.SharePoint.SPException","message":
{"lang":"en-US","value":"There is no app context to execute this request."}}}' } }
L'URL j'utilise pour le téléchargement:
siteurl + "/_api/SP.AppContextSite(@TargetSite)/web/lists/getByTitle(@TargetLibrary)/RootFolder/Files/add([email protected],overwrite='true')?" +
"@TargetSite='" + siteurl + "'" +
"&@TargetLibrary='" + libraryName + "'" +
"&@TargetFileName='" + fileName + "'";
La demande de poste:
request.post({
url: url,
type: "POST",
headers: uploadHeaders,
binaryStringRequestBody: true,
body: fileData,
})
Toute idée je fais mal?
Je pense que aidé. Maintenant, je reçois '' Accès refusé. Vous n'avez pas la permission d'effectuer cette action ou d'accéder à cette ressource. "' Je suis certain d'avoir les bonnes permissions. – TietjeDK