php写访问密钥,如何使用php获取Twitter API的用户访问令牌和访问密钥

这篇博客介绍了如何通过PHP和TwitterOAuth库获取Twitter API 1.1的用户令牌。首先,用户通过授权页面被重定向到Twitter,然后返回时在`twitter-back.php`中交换请求令牌以获取访问令牌和密钥。博客提供了详细的代码示例,展示了设置cookie存储临时令牌以及在用户授权后如何交换访问令牌的过程。
摘要由CSDN通过智能技术生成

我正在尝试编写几个php页面来获取Twitter API 1.1的用户令牌.我正在使用TwitterOAuth库https://twitteroauth.com/

第一页:twitter-go.php

用户打开它并被重定向到twitter.com以授权该应用程序.

我猜这是使用POST oauth / request_token和GET oauth / authorize函数的地方.

第二页:twitter-back.php

一旦授权应用程序,用户就会从Twitter重定向到那里.然后,它显示用户访问令牌和用户访问密钥(或将它们存储到数据库中供以后使用).

我猜这是使用POST oauth / access_token函数的地方.

这是获取用户秘密令牌和访问令牌的正确方法吗?

万分感谢!

亚瑟

解决方法:

好吧,实际上我自己弄明白了.以下是我需要它的代码:

第一页:twitter-go.php

用户打开它并被重定向到twitter.com以授权该应用程序.

//LOADING LIBRARY

require "twitteroauth/autoloader.php";

use Abraham\TwitterOAuth\TwitterOAuth;

//TWITTER APP KEYS

$consumer_key = 'yourkey';

$consumer_secret = 'yourkey';

//CONNECTION TO THE TWITTER APP TO ASK FOR A REQUEST TOKEN

$connection = new TwitterOAuth($consumer_key, $consumer_secret);

$request_token = $connection->oauth("oauth/request_token", array("oauth_callback" => "http://boulangerie-colas.fr/twitter/twitter-back.php"));

//callback is set to where the rest of the script is

//TAKING THE OAUTH TOKEN AND THE TOKEN SECRET AND PUTTING THEM IN COOKIES (NEEDED IN THE NEXT SCRIPT)

$oauth_token=$request_token['oauth_token'];

$token_secret=$request_token['oauth_token_secret'];

setcookie("token_secret", " ", time()-3600);

setcookie("token_secret", $token_secret, time()+60*10);

setcookie("oauth_token", " ", time()-3600);

setcookie("oauth_token", $oauth_token, time()+60*10);

//GETTING THE URL FOR ASKING TWITTER TO AUTHORIZE THE APP WITH THE OAUTH TOKEN

$url = $connection->url("oauth/authorize", array("oauth_token" => $oauth_token));

//REDIRECTING TO THE URL

header('Location: ' . $url);

?>

第二页:twitter-back.php

一旦授权应用程序,用户就会从Twitter重定向到那里.然后它显示用户访问令牌和用户访问密钥.

/**

* users gets redirected here from twitter (if user allowed you app)

* you can specify this url in https://dev.twitter.com/ and in the previous script

*/

//LOADING LIBRARY

require "twitteroauth/autoloader.php";

use Abraham\TwitterOAuth\TwitterOAuth;

//TWITTER APP KEYS

$consumer_key = 'yourkey';

$consumer_secret = 'yourkey';

//GETTING ALL THE TOKEN NEEDED

$oauth_verifier = $_GET['oauth_verifier'];

$token_secret = $_COOKIE['token_secret'];

$oauth_token = $_COOKIE['oauth_token'];

//EXCHANGING THE TOKENS FOR OAUTH TOKEN AND TOKEN SECRET

$connection = new TwitterOAuth($consumer_key, $consumer_secret, $oauth_token, $token_secret);

$access_token = $connection->oauth("oauth/access_token", array("oauth_verifier" => $oauth_verifier));

$accessToken=$access_token['oauth_token'];

$secretToken=$access_token['oauth_token_secret'];

//DISPLAY THE TOKENS

echo "Access Token : ".$accessToken."
";

echo "Secret Token : ".$secretToken."
";

?>

希望有所帮助;)

亚瑟

标签:php,twitter,oauth

来源: https://codeday.me/bug/20190612/1223388.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值