【问题标题】:How to send request without user-agent header如何在没有用户代理标头的情况下发送请求
【发布时间】:2012-05-02 05:54:03
【问题描述】:

我有一个视频广播项目,我需要在其中提供下载选项。我使用了 Justin.tv api,当我点​​击该 url 时,他们会发送一个 url 来下载视频文件,但出现 403 禁止错误。我已经和他们的相关人员讨论过这个问题,他回答说:

浏览器会收到 403 错误,您需要代理文件 通过您的服务器(通过删除 User-Agent 标头)或告诉用户 使用下载管理器。

后一种肯定不是好主意。现在我被困在没有用户代理标头的情况下发送请求我该怎么做(使用 PHP)。我用谷歌搜索了它,但没有发现任何有用的东西。

【问题讨论】:

  • 你是怎么下载的?
  • 我之前没有下载任何东西。首先使用他们的 api 文档,我只是播放视频。之后,他们提供该特定视频的链接
  • 我猜这可能是一个跨域问题..您可能需要在 PHP 中使用代理

标签: php api url header request


【解决方案1】:

对这个旧线程进行死灵术,我不知道@ayman-safadi 评论中的信息在发布时是否准确。那是从其他地方引用的。但是现在,要删除用户代理标头,您可以这样做:

-H "User-Agent:"

【讨论】:

    【解决方案2】:

    也许您可以让“下载”链接指向一个内部页面,该页面将对实际的 Justin.tv 链接进行cURL 调用。

    根据one of the comments

    仅供参考...除非您专门设置了用户代理,否则不会在您的请求中发送任何用户代理,因为没有像其他一些选项那样的默认值。

    有很多 more comments 可能会有所帮助。

    【讨论】:

    • 不方便,不。但他的 internetz 充斥着 cURL 教程。这个特别有用:phpsense.com/2007/php-curl-functions
    • 是的,这个链接真的很有帮助,我实现了我的目标......非常感谢:)
    猜你喜欢
    • 1970-01-01
    • 2017-09-15
    • 1970-01-01
    • 1970-01-01
    • 2014-01-16
    • 1970-01-01
    • 2012-10-29
    • 1970-01-01
    相关资源
    最近更新 更多