1

我正在使用 Windows 资源管理器来测试我正在适应我们的系统的 WebDAV 实现。该实现使用 IIS Express 并由 Visual Studio 2013 启动。我关闭了 Windows Explorer 对带有 WebDAV 的 SSL 的要求,因此我可以测试基本身份验证(有效)。

我遇到的问题是 DavFile 实现的 Write 方法。我连接到 web 文件夹,导航到子文件夹,然后尝试将 JPG 文件从计算机硬盘驱动器上的文件夹复制到 WebDAV 子文件夹(使用 Windows 资源管理器)。

尝试复制文件 (854kb) 失败。当我设置断点时,我注意到“段”流(“写入”方法的输入参数之一,显示 0(零)字节长度。

有关如何调试此问题的任何提示?流中 0 字节的最可能原因是什么?

4

1 回答 1

0

以下是有关如何理解问题所在的一些想法:

  1. 检查服务器日志以查找异常。默认情况下,它称为 WebDAVLog.txt,位于 \App_Data\WebDAV\Logs\ 文件夹中。里面有什么例外吗?检查您的服务器日志并确保所有请求都成功。

  2. 使用 Fiddler 工具或任何其他调试代理检查 WebDAV 请求。虽然所有到达 WebDAV 服务器引擎的请求都被记录下来,但如果请求在到达引擎之前失败,您将不会在日志中看到它。如果请求在身份验证阶段失败,通常会发生这种情况。

    请注意,要在“localhost”上使用 Fiddler 捕获请求,您必须在连接到服务器时使用“localhost.fiddler”而不是“localhost”,例如:http://localhost.fiddler:1234

  3. 排除任何客户端问题。最后,您使用的客户端软件可能存在问题,包括 Microsoft miniredirector。尝试从任何其他机器访问服务器。要了解问题是在客户端还是服务器端,请尝试在 ajaxbrowser.com 上重现该问题。

您可以在此处发布 WebDAVLog.txt 或 fiddler 日志的一部分或将其发送给 IT Hit,它可能会给出错误的想法。

于 2014-07-15T07:03:47.440 回答