【问题标题】:Posting a Tweet using Oauth使用 Oauth 发布推文
【发布时间】:2012-05-16 04:09:56
【问题描述】:

我正在尝试创建一个 Web 应用程序,该应用程序允许用户直接在网页上发布来自表单的推文,而不是使用 Twitter 自己的预构建弹出窗口。问题是,我在网上看到的 sn-p 代码不起作用:

$message = "Hello there! This is a tweet!";

$twitterObj->post('statuses/update', array('status' => "$message"));

当我尝试执行代码时出现此错误:

警告:在第 76 行的 /twitter/EpiOAuth.php 中为 foreach() 提供了无效参数

警告:http_build_query() [function.http-build-query]:参数 1 应为数组或对象。 /twitter/EpiOAuth.php 第 140 行中给出的值不正确

我正在构建示例并使用此网址上的 OAuth 库:

http://www.jaisenmathai.com/articles/twitter-php-sign-in.html

有人有什么建议吗?


编辑

问题解决了!事实证明,这是我需要使用的正确语句:

$twitterObj->post_statusesUpdate(array('status' => 'Message goes here.'));

【问题讨论】:

    标签: php html forms twitter oauth


    【解决方案1】:

    这是我用的:

    $message = "Hello there! This is a tweet!";
    
    $twitterObj->OAuthRequest('https://twitter.com/statuses/update.xml', array('status' => $message), 'POST');

    这是在此处找到的库:https://github.com/abraham/twitteroauth

    【讨论】:

    • 感谢您的帮助!我用你的代码替换了我的代码,看起来错误已经消失了,但它仍然没有发布推文。所以它可以识别它,但它看起来不像在执行它。
    • 您是否在 Twitter 端为您的应用启用了写入权限?
    • 是的,出于测试目的,我将其设置为“读取、写入和访问直接消息”,然后将其调回简单的“读取和写入”,但仍然无法正常工作。
    • 我需要在 Twitter 的应用程序设置中的“OAuth 工具”选项卡下编辑任何内容吗?
    • 这实际上取决于您使用的 OAuth 库。这使用github.com/abraham/twitteroauth
    猜你喜欢
    • 2011-09-03
    • 2012-10-27
    • 2012-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-20
    • 2021-04-11
    • 1970-01-01
    相关资源
    最近更新 更多