我在尝试实现request_token&时收到了TwitterOAuth异常。复制TwitterOAuth的功能。
错误
我使用的代码如下:
require_once $cfg['server']['root']."/inc/lib/tw/autoload.php";
use Abraham\TwitterOAuth\TwitterOAuth;
define('CONSUMER_KEY', getenv('SlUlxP1lmXqqCCqoUOy0DGAL6'));
define('CONSUMER_SECRET', getenv('MM0vL2aRwp9rgS7qUF8UNEO3NtYv9W7QCZYSDzAyrZt7qa0XGg'));
define('OAUTH_CALLBACK', getenv('http://www.example-site.com/login/'));
$connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET);
pA($connection); //print connection contents
$request_token = $connection->oauth('oauth/request_token', array('oauth_callback' => OAUTH_CALLBACK));
pA($request_token); //print connection contentsa
我得到的输出是:
Abraham\TwitterOAuth\TwitterOAuth Object
(
[response:Abraham\TwitterOAuth\TwitterOAuth:private] => Abraham\TwitterOAuth\Response Object
(
[apiPath:Abraham\TwitterOAuth\Response:private] =>
[httpCode:Abraham\TwitterOAuth\Response:private] => 0
[headers:Abraham\TwitterOAuth\Response:private] => Array
(
)
[body:Abraham\TwitterOAuth\Response:private] => Array
(
)
[xHeaders:Abraham\TwitterOAuth\Response:private] => Array
(
)
)
[bearer:Abraham\TwitterOAuth\TwitterOAuth:private] =>
[consumer:Abraham\TwitterOAuth\TwitterOAuth:private] => Abraham\TwitterOAuth\Consumer Object
(
[key] =>
[secret] =>
[callbackUrl] =>
)
[token:Abraham\TwitterOAuth\TwitterOAuth:private] =>
[signatureMethod:Abraham\TwitterOAuth\TwitterOAuth:private] => Abraham\TwitterOAuth\HmacSha1 Object
(
)
[timeout:protected] => 5
[connectionTimeout:protected] => 5
[decodeJsonAsArray:protected] =>
[userAgent:protected] => TwitterOAuth (+https://twitteroauth.com)
[proxy:protected] => Array
(
)
)
Fatal error: Uncaught exception 'Abraham\TwitterOAuth\TwitterOAuthException' with message '{"errors":[{"code":215,"message":"Bad Authentication data."}]}' in /home/user/public/test.com/public/inc/lib/tw/src/TwitterOAuth.php:137 Stack trace: #0 /home/chrismoore/public/trybe-ing.com/public/login/tw/tw_header.php(13): Abraham\TwitterOAuth\TwitterOAuth->oauth('oauth/request_t...', Array) #1 /home/user/public/test.com/public/login/index.php(6): require_once('/home/user...') #2 {main} thrown in /home/user/public/test.com/public/inc/lib/tw/src/TwitterOAuth.php on line 137
任何人都可以帮我找到解决这个问题的方法。
感谢。
答案 0 :(得分:0)
getenv()
查找名称作为字符串参数传递的环境变量。但看起来您已将要使用的值传递给getenv()
。 (顺便说一句,如果这是真的,最好不要把你的秘密明文放在公共网站上?)
您是否尝试将这些字符串作为第二个参数传递给define()
,而不包含在getenv()
中?