Я работаю над веб-частью, которая использует json из файла в библиотеке сайта.
Сайт: WebPart
Сайт -> Библиотека -> file.json
Я использовал PnP для загрузки файла следующим образом:
pnp.sp.web.getFileByServerRelativePath(this.props.context.pageContext.site.serverRelativeUrl + "/AppRegister/apps.json").
getText().then((text: string) => {
this.setState({result: this.parseJSONtoHTML(text)});
});
И это работало в верстаке, но на реальном сайте я получаю 404.
Существует некоторая разница в сгенерированном запросе:
Местный -
https://XXX.sharepoint.com/sites/YYY/_api/web/getFileByServerRelativeUrl('/sites/YYY/AppRegister/apps.json')/$value
Развернутые:
https://XXX.sharepoint.com/sites/_api/web/getFileByServerRelativeUrl('/sites/YYY/AppRegister/apps.json')/$value
Так что я считаю, что это потому, что развернутая веб-часть использует только «сайты» без определенного сайта, но я не знаю, как это изменить.
Или, может быть, есть лучший способ загрузить файл из библиотеки sharepoint в реакции?