Php 如何保持应用程序的授权(Twitter OAuth)

Php 如何保持应用程序的授权(Twitter OAuth),php,twitter,oauth,authorize,Php,Twitter,Oauth,Authorize,所以,我正在使用TwitterOAuthAPI,并试图显示来自我的家庭时间线的推文,结果成功了 但是,每次我想从我的主页访问推文时,我都需要授权我的应用程序,如果我只是重新加载放置推文的页面,那么推文将是空的 我不喜欢dabr,所以用户使用twitter登录,无论用户做什么,用户都不需要再次授权应用程序 有什么解决方案吗?将TwitterOAuth实例本身设置到会话中可能会对您有所帮助 <?php // Make sure to load library before starting

所以,我正在使用TwitterOAuthAPI,并试图显示来自我的家庭时间线的推文,结果成功了

但是,每次我想从我的主页访问推文时,我都需要授权我的应用程序,如果我只是重新加载放置推文的页面,那么推文将是空的

我不喜欢dabr,所以用户使用twitter登录,无论用户做什么,用户都不需要再次授权应用程序


有什么解决方案吗?

将TwitterOAuth实例本身设置到会话中可能会对您有所帮助

<?php

// Make sure to load library before starting session
require_once('twitteroauth.php');

session_start();

if (isset(
    $_SESSION['oauth_token'],
    $_SESSION['oauth_token_secret'],
    $_GET['oauth_verifier']
)) {

    // TwitterOAuth instance, with two new parameters we got in twitter_login.php  
    $twitteroauth = new TwitterOAuth('CONSUMER_KEY', 'CONSUMER_SECRET', $_SESSION['oauth_token'], $_SESSION['oauth_token_secret']);

    // Let's request the access token  
    $twitteroauth->getAccessToken($_GET['oauth_verifier']);

    // Save TwitterOAuth instance in a session var
    $_SESSION['twitteroauth'] = $twitteroauth;

    // Reset parameters
    unset($_SESSION['oauth_token'], $_SESSION['oauth_token_secret']);

} elseif (isset($_SESSION['twitteroauth'])) {

    $twitteroauth = $_SESSION['twitteroauth'];

} else {

    die('Error');

}


// You can request here using $twitteroauth.

将TwitterOAuth实例本身设置到会话中可能会对您有所帮助

<?php

// Make sure to load library before starting session
require_once('twitteroauth.php');

session_start();

if (isset(
    $_SESSION['oauth_token'],
    $_SESSION['oauth_token_secret'],
    $_GET['oauth_verifier']
)) {

    // TwitterOAuth instance, with two new parameters we got in twitter_login.php  
    $twitteroauth = new TwitterOAuth('CONSUMER_KEY', 'CONSUMER_SECRET', $_SESSION['oauth_token'], $_SESSION['oauth_token_secret']);

    // Let's request the access token  
    $twitteroauth->getAccessToken($_GET['oauth_verifier']);

    // Save TwitterOAuth instance in a session var
    $_SESSION['twitteroauth'] = $twitteroauth;

    // Reset parameters
    unset($_SESSION['oauth_token'], $_SESSION['oauth_token_secret']);

} elseif (isset($_SESSION['twitteroauth'])) {

    $twitteroauth = $_SESSION['twitteroauth'];

} else {

    die('Error');

}


// You can request here using $twitteroauth.


您应该将OAuth实例保存到
$\u SESSION
中。顺便说一下,我生成了非常有用的库UltimateOAuth。如果你能读一点日语,可以随意看看GitHub。您还可以像使用xAuth-one一样进行OAuth授权。我将此命名为para xAuth Authorization。@确定:您所说的OAuth实例是什么意思(对不起,我是twitter OAuth API的新手),而且我不知道日语您使用的是什么库
twitteroauth.php
?是的,Abaraham的twitteroauth库您应该将oauth实例保存到
$\u会话中。如果你能读一点日语,可以随意看看GitHub。您还可以像使用xAuth-one一样进行OAuth授权。我将此命名为para xAuth Authorization。@确定:您所说的OAuth实例是什么意思(对不起,我是twitter OAuth API的新手),而且我不知道日语您使用的是什么库
twitteroauth.php
?是的,Abaraham的twitteroauth库你是说第一个代码上的
oauth_令牌
oauth_令牌
。。。如果您的意思是在调用
https://api.twitter.com/oauth/access_token
,没错。是的,那就是
$token\u credentials=$connection->getAccessToken($\u请求['oauth\u验证程序])引用自GitHub
$access\u-token
表示
$token\u-credentials['oauth\u-token']
$access\u-token\u-secret
表示
$token\u-credentials['oauth\u-token\u-secret']
。人们经常使用这些名称是为了告诉
请求\u令牌
访问\u令牌
。您的意思是第一个代码上的
oauth\u令牌
oauth\u令牌
。。。如果您的意思是在调用
https://api.twitter.com/oauth/access_token
,没错。是的,那就是
$token\u credentials=$connection->getAccessToken($\u请求['oauth\u验证程序])引用自GitHub
$access\u-token
意味着
$token\u-credentials['oauth\u-token']
,而
$access\u-token\u-secret
意味着
$token\u-credentials['oauth\u-token\u-secret']
意味着
$token\u-credentials['oauth\u-secret'>。人们经常使用这些名字是为了告诉
请求令牌访问\。