私は、Sharepoint REST APIを通じてSharepoint Onlineライブラリに文書をアップロードしようとしているNodeJSとExpressJs上にWebアプリケーションを構築しています。Sharepoint要求ダイジェスト値クロスドメイン
私はリストアイテムを認証し、作成して更新することができます。私はnode-sp-auth
を認証に使用しており、express-request
はHTTP要求をしています。
Sharepoint REST APIにアクセスするには、私のヘッダにFormDigestValue
を使用しています。
ヘッダー:
Headers['Content-Type'] = 'application/json;odata=verbose';
Headers['X-RequestDigest'] = FormDigestValue;
Headers['Accept'] = "application/json;odata=verbose";
Headers['X-HTTP-Method'] = "POST";
これは私がカスタムリストに/更新リスト項目を作成しようとすると、細かい作業です。しかし、私は次のエラー受信文書をアップロードしようとすると:
body: '{"error":{"code":"-1, Microsoft.SharePoint.SPException","message":
{"lang":"en-US","value":"There is no app context to execute this request."}}}' } }
私は、アップロードのために使用していますURL:
siteurl + "/_api/SP.AppContextSite(@TargetSite)/web/lists/getByTitle(@TargetLibrary)/RootFolder/Files/add([email protected],overwrite='true')?" +
"@TargetSite='" + siteurl + "'" +
"&@TargetLibrary='" + libraryName + "'" +
"&@TargetFileName='" + fileName + "'";
ポスト要求:
request.post({
url: url,
type: "POST",
headers: uploadHeaders,
binaryStringRequestBody: true,
body: fileData,
})
任意のアイデアをどのような私は間違っている?
contextinfoは私が助けたと思います。 ''アクセスが拒否されました。あなたはこのアクションを実行したり、このリソースにアクセスする権限を持っていません。 ""私は正しい権限を持っていると確信しています。 – TietjeDK