在我正在使用的旧代码中,Web 服务访问 SharePoint 列表。
其中一些列表需要特殊权限,因此在首次访问时需要用户凭据。
然而,在我向应用程序添加一些日志记录后,我注意到当用户第一次尝试调用 Web 服务时,实际上会发生以下情况:
- Web服务开始正常运行;
- 当项目需要特殊权限时,SharePoint 会发送 HTTP 401,它会变成
ThreadAbortException
; - 向用户显示凭据框;
- 登录后,再次调用 Web 服务,这次没有问题。
这实质上意味着 SharePoint 调用之前的代码在此方案中运行两次。
在运行任何代码之前显示凭据框的正确方法是什么?
当匿名访问是IIS应该被禁用时是这种情况吗?我怀疑是这样,但是我在配置 Web 项目方面经验不足,所以我感到困惑。