0

Twitteroauth ライブラリを使用して Twitter に投稿しようとしています。これが私のスクリプトです。

<?php
require_once('twitteroauth/twitteroauth.php');

$consumerKey    = 'xx';
$consumerSecret = 'xx';
$oAuthToken     = 'xx';
$oAuthSecret    = 'xx';

// Connect to Twitter
$connection = new TwitterOAuth($consumerKey, $consumerSecret,$oAuthToken, $oAuthSecret);

// Post Update
$content = $connection->post('statuses/update', array('status' => 'Test Tweet'));

var_export($connection->http_info);
?>

デバッグ用にエクスポート:

array ( 'url' => 'https://api.twitter.com/1/statuses/update.json', 'content_type' => 'application/json; charset=utf-8', 'http_code' => 401, 'header_size' => 982, 'request_size' => 478, 'filetime' => -1, 'ssl_verify_result' => 0, 'redirect_count' => 0, 'total_time' => 0.376407, 'namelookup_time' => 0.017936, 'connect_time' => 0.098766, 'pretransfer_time' => 0.274227, 'size_upload' => 292, 'size_download' => 84, 'speed_download' => 223, 'speed_upload' => 775, 'download_content_length' => 84, 'upload_content_length' => 292, 'starttransfer_time' => 0.376153, 'redirect_time' => 0, )

ツイートは投稿されません。10 回確認しました。アクセス トークンは正しいです。

4

1 に答える 1

0

まず、API v1 が廃止されたため、twitter にツイートを投稿するための URL が間違っています。ツイートを投稿するには、API v1.1 を使用する必要があります。幸いなことに、たまたま twitteroauth をダウンロードした場合は、既に設定されています。

そうでない場合は、バージョンを 1.1 に設定する必要があります

twitteroauth.php に移動し、public $host を

public $host= "https://api.twitter.com/1.1/"; 

21行目。

今あなたのツイートのURLは

https://api.twitter.com/1.1/statuses/update.json

次の接続文字列を使用してツイートします。

$content = $connection->post('statuses/update', array('status' => 'Test Tweet'));
于 2013-10-20T13:53:45.647 に答える