1

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

但是,当我更改为 usingDavProtocolEditDocument()时,浏览器想要打开 IT Hit Edit Document Opener 3 应用程序。在几个“允许”屏幕之后,我的 webdav 服务器收到一系列请求,其中要么是空白路径,要么只有“/”。我请求的 cookie(或所有 cookie,如果我不指定一个)在请求标头中,但服务器的行为很奇怪。

那么,在这种情况下我应该做什么呢?我是否必须手动检查 cookie 并发送回一些东西?在这种情况下我应该寄回什么?路径在哪里,为什么我不能再访问它了?

4

1 回答 1

0

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

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

您将使用 cookie 做什么取决于您的身份验证实现。如果您已使用 Visual Studio 中的“添加 WebDAV 服务器实现”向导将 WebDAV添加到 ASP.NET 应用程序,它将由 ASP.NET 身份验证模块处理,并且被排除或拒绝。

于 2017-10-21T04:48:28.110 回答