TwitterOAuth 实现错误代码 215:错误的身份验证数据
TwitterOAuth Implementation Error Code 215: Bad Authentication Data
我在尝试实施 request_token 并复制 TwitterOAuth 的功能时收到 TwitterOAuthException。
错误
我使用的代码如下:
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
谁能帮我找到解决这个问题的方法。
谢谢。
getenv()
查找名称作为字符串参数传递的环境变量。但看起来您已将要使用的值传递给 getenv()
。 (顺便说一下,如果这是真的,最好不要将你的秘密以明文形式放在 public 网站上?)
您是否尝试过将这些字符串作为第二个参数传递给 define()
,而不在 getenv()
中换行?
我在尝试实施 request_token 并复制 TwitterOAuth 的功能时收到 TwitterOAuthException。
错误
我使用的代码如下:
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
谁能帮我找到解决这个问题的方法。
谢谢。
getenv()
查找名称作为字符串参数传递的环境变量。但看起来您已将要使用的值传递给 getenv()
。 (顺便说一下,如果这是真的,最好不要将你的秘密以明文形式放在 public 网站上?)
您是否尝试过将这些字符串作为第二个参数传递给 define()
,而不在 getenv()
中换行?