我有一个带有超链接的MS-Word文档。超链接指向我服务器上的身份验证重定向器。当我控制点击超链接时,我的服务器日志会报告它
然后,是什么给出的?这是设计的吗?
我注意到了这一点,因为我的auth系统目前依赖于重定向器设置的cookie。我有一些关于使用基于url的auth的想法,但我需要先知道是什么激发了Word的行为。
我有一些猜测,但我正在寻找一些权威的(或至少是一个更好的猜测)。
答案 0 :(得分:17)
不幸的是,是的。他们试图将其归咎于“Web服务器使用的单点登录系统的限制”......
答案 1 :(得分:15)
实际上,这是一个“功能”。如果超链接是Word文档,word将尝试下载文档并将其打开。 (由于用户代理,您必须认为它是IE,但请求来自Word流程中的WinInet。)
当服务器没有响应页面时会发生混乱,而是使用重定向和cookie进行响应。 Word遵循重定向以查看它是否将获取Word文档,并最终以HTML页面结束。然后决定Firefox应该显示它,因此它会使用最终重定向的URL启动Firefox(但没有服务器发送的任何cookie)。
如果这是一个SSO登录,Firefox可能最终需要这些cookie。
答案 2 :(得分:3)
迟到:
注意到同样的问题。在MVC 4中,它导致了查询字符串信息的丢失。 只有在收到Http 200状态后,Word才会启动浏览器。
所以我通过检查控制器是否来自IE7(可能只是MS Word)并手动返回200来避免这种情况。
然后'真正的'浏览器将重新发送http请求,并且所有井的结束都很好,因为从那里正常处理请求并且所有信息都保留在与“真实”浏览器的会话中。
有点变通方法,但是嘿,它有效。它仅适用于少量请求(在我们的例子中)。