如何为SharePoint站点注册EventReceivers?个人文件夹已配置成功
核心问题原因
你给普通站点site1的getList参数用了完整的服务器相对路径/sites/site1/Documents,但这个参数要求的是相对于当前Web的站点内部相对路径。个人站点的请求之所以生效,是因为个人站点的Web根路径就是/personal/jim_aaa_com,参数里的路径刚好匹配它的服务器相对路径;但普通站点site1的Web根是/sites/site1,参数里不需要重复这部分路径。
修正后的请求地址
直接使用文档库相对于站点根的路径即可,修改后的请求地址如下:
https://{{SharePointTenantName}}.sharepoint.com/sites/site1/_api/web/getList('/Documents')/EventReceivers
也可以省略开头的斜杠,写法更简洁:
https://{{SharePointTenantName}}.sharepoint.com/sites/site1/_api/web/getList('Documents')/EventReceivers
额外排查要点
- 确认账号对
site1的Documents库拥有完全控制权限,权限不足会直接导致注册失败 - 检查请求配置:注册EventReceiver必须用
POST方法,请求头需包含Content-Type: application/json;odata=verbose,同时要正确携带身份验证令牌(比如Bearer Token) - 若仍报错,优先查看返回的具体错误码和信息:404代表列表路径错误,403是权限问题,500则需要结合错误详情排查内部逻辑问题
内容的提问来源于stack exchange,提问作者Ofer
相关产品推荐
相关产品推荐

