DocManager.DavProtocolEditDocument with cookie 身份验证的行为



我正在尝试使用cookie身份验证在WebDav服务器上打开word文档。当我使用 url 为 <webdavServer>/info/about/file.docxEditDocument() 方法时,浏览器要求打开 Microsoft Word,然后发送两个请求,一个具有删除文件的路径,另一个具有完整路径。这似乎有效。

但是,当我更改为使用DavProtocolEditDocument()时,浏览器想要打开 IT 命中编辑文档打开器 3 应用程序。在几个"允许"屏幕之后,我的 webdav 服务器收到一系列请求,这些请求要么是空白路径,要么只有"/"。我请求的 cookie(或所有 cookie,如果我没有命名(都在请求标头中,但服务器行为异常。

那么,在这种情况下,我应该做什么?我必须手动检查 cookie 并发送回一些东西吗?在这种情况下,我应该发回什么?这条路将走向何方,为什么我不能再访问它了?

WebDAV 客户端应用程序(在您的情况下为 MS 迷你重定向器驱动程序(在后台工作,将 OPTIONS 和 PROPFIND WebDAV 请求提交到根或您的 WebDAV 服务器以及文件路径中的每个文件夹。这是 MS Office 和 MS Mini-redirector 的正常行为。

您的 WebDAV 服务器必须处理这些 WebDAV 请求并提供有效的 WebDAV 响应。您可以使用Fiddler工具,WireShark或任何其他HTTP调试代理捕获请求,并查看它们是否成功处理。

您将如何使用 Cookie 取决于您的身份验证实现。如果您已使用Visual Studio中的"添加WebDAV服务器实现"向导将WebDAV添加到 ASP.NET 应用程序,则 ASP.NET 身份验证模块将对其进行处理,并且例外或拒绝。

最新更新