在 React WebPart 中使用 httpClient.get 来自 GetFolderByServerRelativeUrl 的 MS Edge HTTP 403
Posted
技术标签:
【中文标题】在 React WebPart 中使用 httpClient.get 来自 GetFolderByServerRelativeUrl 的 MS Edge HTTP 403【英文标题】:MS Edge HTTP403 from GetFolderByServerRelativeUrl using httpClient.get in aReact WebPart 【发布时间】:2019-03-31 13:29:40 【问题描述】:我只在 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)=> ...
当然希望有人以前解决过这个问题。感谢您的时间和帮助。
【问题讨论】:
【参考方案1】:您需要在代码中使用spHttpClient
而不是httpClient
。
因此,将您的代码修改为this.props.context.spHttpClient.get(...)
,它应该可以开始工作了。
spHttpClient
专门用于与 SharePoint REST API 交互,而httpClient
用于与 SharePoint 外部的 API 交互。
【讨论】:
以上是关于在 React WebPart 中使用 httpClient.get 来自 GetFolderByServerRelativeUrl 的 MS Edge HTTP 403的主要内容,如果未能解决你的问题,请参考以下文章
SPFX React -Basic Webpart 中的数据版本错误
SPFx Webpart - node_modules/@types/ [prop types] 和 [react] index.d.ts:在 gulp 构建时加载“错误 TS1005”
使用反应路由器在sharepoint框架webpart中路由?我陷入了一种情况,我必须在单击按钮时重定向到另一个页面。
使用 httpc lib 将大型 http 响应流式传输到 Erlang 中的磁盘