我有02个自定义Web API。一种使用用户和密码,另一种使用Azure AD App Only令牌连接到SharePoint Online。他们都没有执行批处理活动,而是简单的CRUD活动。但是有时使用用户名和密码的自定义Web API受到限制,从SharePoint Online收到503“服务器太忙”响应。我计划将该身份验证更改为Azure AD App Only令牌,因为在使用Azure AD App Only令牌时,我从未收到该响应。也许与分配给网站集的资源配额量有关。
答案 0 :(得分:0)
我知道这确实不是您问题的答案。当SharePoint限制您的请求时,它将向您发送 429太多请求或 503服务器太忙,并包含有关您应该重试的信息(响应标题Retry-After)。 / p>
节流根据用户而定。因此,一个用户(发出大量请求)可能受到限制,而另一用户则没有。我不确定这是否适用于仅应用程序(可能是),但节流只是一种调节请求数量的机制,以确保服务器不会被一个用户的请求所占用。您有一些选择可以避免受到限制,请参阅下面的参考资料。
您还可以尝试检查响应标头 X-SharePointHealthScore (此标头出现在所有响应中),以检查服务器有多忙。此标头包含从1到10的数字,当10表示SharePoint服务器负载沉重时,您可以期望您的请求将被拒绝。
参考: How to avoid getting throttled or blocked in SharePoint Online