MS Edge HTTP403 из GetFolderByServerRelativeUrl с использованием httpClient.get в веб-части React - PullRequest
0 голосов
/ 26 октября 2018

Я получаю HTTP403 только в MS Edge.Я тестировал во многих других браузерах, и .get отлично работает.Я создаю React WebPart для использования в нашей среде SharePoint OnLine.Файл, который я пытаюсь получить, является файлом CSV, хранящимся в библиотеке документов.Я использую веб-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 Ответ

0 голосов
/ 21 ноября 2018

Вам нужно использовать spHttpClient, а не httpClient в своем коде.

Итак, измените ваш код как this.props.context.spHttpClient.get(...), и он должен начать работать.

spHttpClient isСоздан специально для взаимодействия с API REST SharePoint, тогда как httpClient создан для взаимодействия с API вне SharePoint.

...