2

我正在使用 tmOAuth 库。

使用新的 1.1 API,以下内容返回错误代码 400 - 但身份验证已完成(状态身份验证相同)!我使用的库适用于所有调用,除了这个!

$tmhOAuth->request(
    'POST', $tmhOAuth->url('https://api.twitter.com/1.1/statuses/destroy/MYIDHERE.json'),
    array(
        'id' => MYIDHERE
    )
);

twitter API 文档声明您不必在帖子中发送 id - 但这没有任何区别。

我今天用两个不同的库对此进行了测试,但都不起作用。

任何建议 - 有谁知道它是否有问题?

4

2 回答 2

3

根据您的评论,您已经在1.1 API的两个库中对此进行了测试。

你还没有在这个中测试过它。此处的说明,尽管您似乎已经掌握了您的凭据。

这基本上证明了您使用的库有问题,而不是 twitter API。所以要么在 github 上提交一个错误报告(他们怎么知道?),或者使用另一个类似上面的库。

使用上述库所需的确切代码(它有效,我刚刚对其进行了测试):

// Require the library file
require_once('TwitterAPIExchange.php');

// Set up your credentials
$settings = array(
    'oauth_access_token' => "YOUR_TOKEN",
    'oauth_access_token_secret' => "YOUR_TOKEN_SECRET",
    'consumer_key' => "YOUR_CONSUMER_KEY",
    'consumer_secret' => "YOUR_CONSUMER_SECRET"
);

// Put the correct ID in the URL
$url = 'https://api.twitter.com/1.1/statuses/destroy/YOURIDHERE.json';

// Set the request type
$requestMethod = 'POST';

// Set the post fields
$postfields = array('id' => 'YOURIDHERE');

// Make the request
$twitter = new TwitterAPIExchange($settings);
$json =  $twitter->buildOauth($url, $requestMethod)
                 ->setPostfields($postfields)
                 ->performRequest();

// Dump the response
$result = json_decode($json);
var_dump($result);
于 2013-06-18T12:01:56.980 回答
0

如果您使用 Abraham Williams 的 twitteroauth php 库并尝试删除旧的推文/转发,则需要这样构建post()查询:

$response = $connection->post('statuses/destroy/'.$tweetID, array()); //Curl url output = statuses/destroy/$tweetID.json
于 2014-08-28T00:30:04.800 回答