【发布时间】:2021-02-18 22:56:07
【问题描述】:
我正在实现一个 webdav 服务器。我的匿名访问一切正常,但现在我想要求身份验证。
当用户单击链接以打开 word 文档(我使用的是ms-word: 协议)时,Word 会发送几个 HTTP OPTIONS 请求,首先在 Authorization 标头中带有一个空的 Bearer 值,服务器以 WWW-Authenticate 标头对其进行响应,并且一切正常(用户使用 Word 进行身份验证后,word 发送后续 HTTP OPTIONS 请求,标头中包含令牌值)。
但是,当 Word 请求文件本身时(使用 HTTP GET),没有 Authorization 标头。我尝试让服务器以401 状态响应,但当它响应时,Word 只是放弃并通知用户文件无法打开。
更令人不安的是,据我所知,Word 并行发送 GET 和 OPTIONS 请求,因此在发送 GET 请求时,它不知道它将使用 OPTIONS 请求进行身份验证。
【问题讨论】: