あなたがPINベースまたは3連OAuthを実行しようとしているかどうかは不明です。 PINベースのOAuthで
、あなたが最初の認証URLにユーザーをリダイレクト:サインインした後
use Net::Twitter;
my $nt = Net::Twitter->new(
traits => ['API::RESTv1_1', 'OAuth'],
consumer_key => "YOUR-CONSUMER-KEY",
consumer_secret => "YOUR-CONSUMER-SECRET",
);
my $url = $nt->get_authorization_url();
print "Location: ", $url, "\n\n";
、ユーザーがアクセストークンを取得するには、検証のパラメータとして渡されなければならないPIN番号を受信:
my $pin = 'PIN-NUMBER-PROVIDED-AFTER-LOGIN';
my($access_token, $access_token_secret, $user_id, $screen_name) = $nt->request_access_token(verifier => $pin);
3本足のOAuthでは、「get_authorization_url」を呼び出すときに、コールバックURL(アプリに登録されていることと同じ)を指定する必要がありますことを除いて、ほとんど同じ方法で起動します。
use Net::Twitter;
my $nt = Net::Twitter->new(
traits => ['API::RESTv1_1', 'OAuth'],
consumer_key => "YOUR-CONSUMER-KEY",
consumer_secret => "YOUR-CONSUMER-SECRET",
);
my $url = $nt->get_authorization_url(callback => 'MY-CALLBACK-URL');
print "Location: ", $url, "\n\n";
今回は、サインインした後、ユーザーにPIN番号を与える代わりに、Twitterは2つのクエリ文字列パラメータoauth_tokenとoauth_verifierを渡すコールバックURLに自動的にリダイレクトされます。アクセストークン:
use Net::Twitter;
use CGI;
my $cgi = new CGI;
my $oauth_token = $cgi->param('oauth_token');
my $oauth_verifier = $cgi->param('oauth_verifier');
my $nt = Net::Twitter->new(
traits => ['API::RESTv1_1', 'OAuth'],
consumer_key => "YOUR-CONSUMER-KEY",
consumer_secret => "YOUR-CONSUMER-SECRET",
);
$nt->request_token($oauth_token);
$nt->request_token_secret($oauth_verifier);
my($access_token, $access_token_secret, $user_id, $screen_name) = $nt->request_access_token(verifier => $oauth_verifier);
これが役に立ちます。
あなたのアプリがMojoアプリの場合は、これにプラグインを使用するだけです。 https://metacpan.org/pod/Mojolicious::Plugin::Web::Auth – oalders