0

我只在 MS Edge 中获得 HTTP403。我已经在许多其他浏览器中进行了测试,并且 .get 工作正常。我正在创建要在我们的 SharePoint Online 环境中使用的 React WebPart。我要获取的文件是存储在文档库中的 csv 文件。我正在使用 web api GetFolderByServerRelativeUrl 进行其余调用。这是片段:

   fileUrl =  "..._api/web/GetFolderByServerRelativeUrl('Shared%20Documents')/Files('file.csv')/$value";
    const csvHeaders: Headers = new Headers();
    csvHeaders.append("Content-type","text/csv");
    csvHeaders.append("Cache-Control","no-cache");
    const csvOpts: IHttpClientOptions = {
      headers: csvHeaders
    };   

this.props.context.httpClient.get(fileUrl,HttpClient.configurations.v1,csvOpts).then((response: HttpClientResponse)=>{ ...

当然希望有人以前解决过这个问题。感谢您的时间和帮助。

4

1 回答 1

0

您需要在代码中使用spHttpClient而不是httpClient

因此,修改您的代码this.props.context.spHttpClient.get(...),它应该开始工作。

spHttpClient专为与 SharePoint REST API 对话而httpClient构建,而旨在与 SharePoint 之外的 API 交互。

于 2018-11-21T07:25:07.263 回答