【问题标题】:Same URL serves different content - why?相同的 URL 提供不同的内容 - 为什么?
【发布时间】:2014-05-20 06:33:22
【问题描述】:

如果您已登录,此 URL:https://download.ama-assn.org/resources/doc/usan/x-pub/usan-february-2014-newsletter.pdf 返回 html 页面:

<div id="dlblock">
    <a href="http://www.ama-assn.org">
        <img src="https://www.ama-assn.org/resources/images/header/ama-logo.png" border="0">
    </a><br><br>
    You are about to download<br>
    <strong>
         <a id="file-link" href="/resources/doc/usan/x-pub/usan-february-2014-newsletter.pdf" target="_blank">usan-february-2014-newsletter.pdf</a>
    </strong>
    If you are not automatically redirected, please 
    <a href="/resources/doc/usan/x-pub/usan-february-2014-newsletter.pdf" target="_blank">click here</a> 
    to begin your download.   <br><br>
    <small>Copyright 1995-2014 
        <a href="http://www.ama-assn.org">American Medical Association</a> All rights reserved.
    </small>

如果您单击此页面上的链接(网址与刚刚在新窗口中打开的页面相同),您将获得 pdf。

我不明白服务器如何决定何时提供 html 和何时提供 pdf - 这是如何实现的?

【问题讨论】:

  • 你认为服务器是如何决定你是否登录的?
  • 是的,这确实是个谜。
  • 您指的是哪个“链接”?指向 .pdf 的那个?
  • @D.Kasipovic 请不要笑——我在 cookie 中找不到任何区别。另外,假设我在两个选项卡中打开了此页面 - 一个选项卡上的 html,第二个选项卡上的 pdf。如果在我使用 pdf 访问第二个选项卡后那是 cookie,那么刷新第一个选项卡也应该给我 pdf。而这种方式是行不通的。
  • @KevinB - 总的来说只有一个 URL:download.ama-assn.org/resources/doc/usan/x-pub/…

标签: javascript url cookies browser content-type


【解决方案1】:

服务器可能会读取 http referer 请求标头,如果它与页面的 URL 匹配,则改为提供 PDF 版本。

【讨论】:

  • 不,我已经检查过了。
  • 你在哪里查到的?在服务器脚本中,还是在 HTTP 请求中?
  • 我只是发送了这个头的不同值的请求,或者完全没有它,根本没有效果。
  • 完整比较点击链接时的HTTP请求,直接浏览。网址不一样吗?还有其他不同的标题吗?
  • 如果我发现标头、cookie 或 GET 参数有任何不同,我就不会问这个问题了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-07
  • 1970-01-01
  • 1970-01-01
  • 2014-03-17
  • 2015-11-02
相关资源
最近更新 更多