Reactjs SPFX React使用Rest API 404更新文档库文件元数据问题
我在一个库上创建了一个SPFX扩展名,并试图更新文档库中特定文件夹中的文件元数据。我有该特定文件的项目ID,但遇到404问题。下面是一直在使用的示例代码Reactjs SPFX React使用Rest API 404更新文档库文件元数据问题,reactjs,sharepoint,spfx,sharepoint-rest-api,spfx-extension,Reactjs,Sharepoint,Spfx,Sharepoint Rest Api,Spfx Extension,我在一个库上创建了一个SPFX扩展名,并试图更新文档库中特定文件夹中的文件元数据。我有该特定文件的项目ID,但遇到404问题。下面是一直在使用的示例代码 this.spHttpClient.post(`${url}`, SPHttpClient.configurations.v1, { headers: { "Accept": "application/json; odata=verbose", 'content-type': 'application/j
this.spHttpClient.post(`${url}`,
SPHttpClient.configurations.v1,
{
headers: {
"Accept": "application/json; odata=verbose",
'content-type': 'application/json;odata=verbose',
"X-RequestDigest": requestDigest,
"X-Http-Method": "MERGE",
"If-Match": "*"
},
body: JSON.stringify({
"__metadata": { "type": "SP.Data.10Q_x0020_and_x0020_10K_x0020_Filing_x0020_UnzippedItem" },
"Title": titleLinkUrl
})
})
.then((response: SPHttpClientResponse): void => {
alert('sucess')
}).catch(error => {
console.error(error);
})
}404错误通常意味着无法获取有效的列表项 建议在浏览器中测试Rest端点,以查看是否返回Json。正文和标题应正确。 我在我这边测试了一个示例代码,请参考:
private updateItem() {
var posturl = this.props.context.pageContext.web.absoluteUrl + `/_api/web/lists/GetByTitle('doc2')/items(10)`;
var payload = JSON.stringify({
"__metadata": {
"type": "SP.Data.Doc2Item"
},
"Title": "UpdatedTitle"
});
var option = {
headers: {
'IF-MATCH': '*',
'Content-type': 'application/json;odata=verbose',
"accept": "application/json;odata=verbose",
"odata-version":"3.0",
'X-HTTP-Method': 'PATCH'
},
body: payload
};
return this.props.context.spHttpClient.post(posturl, SPHttpClient.configurations.v1, option).then((response: SPHttpClientResponse) => {
alert(response.status + ':' + response.ok);
});
}
var option = {
headers: {
'IF-MATCH': '*',
'Content-type': 'application/json;odata=verbose',
"accept": "application/json;odata=verbose",
"odata-version":"3.0",
'X-HTTP-Method': 'PATCH'
},
body: payload
};
return this.props.context.spHttpClient.post(posturl, SPHttpClient.configurations.v1, option).then((response: SPHttpClientResponse) => {
alert(response.status + ':' + response.ok);
});
}
404错误通常意味着无法获取有效的列表项 建议在浏览器中测试Rest端点,以查看是否返回Json。正文和标题应正确。 我在我这边测试了一个示例代码,请参考:
private updateItem() {
var posturl = this.props.context.pageContext.web.absoluteUrl + `/_api/web/lists/GetByTitle('doc2')/items(10)`;
var payload = JSON.stringify({
"__metadata": {
"type": "SP.Data.Doc2Item"
},
"Title": "UpdatedTitle"
});
var option = {
headers: {
'IF-MATCH': '*',
'Content-type': 'application/json;odata=verbose',
"accept": "application/json;odata=verbose",
"odata-version":"3.0",
'X-HTTP-Method': 'PATCH'
},
body: payload
};
return this.props.context.spHttpClient.post(posturl, SPHttpClient.configurations.v1, option).then((response: SPHttpClientResponse) => {
alert(response.status + ':' + response.ok);
});
}
var option = {
headers: {
'IF-MATCH': '*',
'Content-type': 'application/json;odata=verbose',
"accept": "application/json;odata=verbose",
"odata-version":"3.0",
'X-HTTP-Method': 'PATCH'
},
body: payload
};
return this.props.context.spHttpClient.post(posturl, SPHttpClient.configurations.v1, option).then((response: SPHttpClientResponse) => {
alert(response.status + ':' + response.ok);
});
}
@Vijay,欢迎你,我建议你可以接受答案,这样也可以帮助论坛中有类似问题的其他人。:)@Vijay,欢迎你,我建议你可以接受作为答案,这样也可以帮助论坛中有类似问题的其他人。:)