【问题标题】:Posting a status to Twitter. browser vs. code在 Twitter 上发布状态。浏览器与代码
【发布时间】:2010-08-24 19:06:55
【问题描述】:

我正在尝试向 Twitter 发布状态更新。我写了一个 API 调用,这样当我这样做时

http://.....&token=$token&s=$token_secret&msg=hello ...当我在浏览器中键入 URL 时,它工作正常。状态已正确发布。

但是,当我想通过 file_get_contents($url) 发布状态时,其中 $url 与浏览器中的工作方式相同,我收到“无法打开流:HTTP 请求失败!HTTP/1.0 401未经授权”

我做了一些测试,和url编码无关。我做得很好。

那么有谁知道为什么它可以通过浏览器工作,而不是通过代码? Twitter 会阻止非浏览器用户代理吗?

非常感谢您的帮助。

【问题讨论】:

    标签: post twitter http-status-code-404 status unauthorized


    【解决方案1】:

    听起来当您在浏览器中尝试时,您是以自己的身份登录的,所以您的帖子正在通过。但是,当您在代码中运行它时,它不会发送您的 cookie,因此未登录,因此无权发布。

    您的代码是否正在尝试登录?

    【讨论】:

    • 感谢您的猜测。我们意识到问题实际上是 Apache 授权安全性......当通过浏览器执行此操作时,我们只需使用我们的凭据登录,并且由于浏览器保存了我们的凭据,我们忘记了我们必须这样做。代码中的一些简单的 CURL 标头用于授权 apache 服务器修复了这项工作。
    猜你喜欢
    • 1970-01-01
    • 2022-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-14
    • 2013-11-16
    • 1970-01-01
    相关资源
    最近更新 更多