web-dev-qa-db-ja.com

Twitter oauth APIからメールIDを取得できますか?

Twitterアプリケーションを受け入れたユーザーのメールIDを取得する方法は?

私は多くのフォーラムを経験しました。しかし、彼らは言及しました、それは不可能です。また、これらの投稿は1年以上前のものです。 PHPを使用してTwitter APIからユーザーのメールIDを取得できるかどうかを知ることができますか?

次のURLを使用してTwitterユーザーの詳細を取得しています。

https://api.Twitter.com/1.1/account/verify_credentials.json

51
Vinoth Babu

これは、リクエストするフォームに入力することで可能になりました 昇格された権限

  1. https://support.Twitter.com/forms/platform に移動します
  2. 「特別な権限へのアクセスが必要」を選択します
  3. アプリケーション名とIDを入力します。これらは https://apps.Twitter.com/ で取得できます-アプリケーションIDは、アプリをクリックした後のブラウザーのアドレスバーの数値部分です。
  4. 許可リクエスト:「メールアドレス」
  5. 送信して応答を待つ
  6. リクエストが許可されると、追加の許可設定がTwitterアプリの[許可]セクションに追加されます。 [追加のアクセス許可]に移動し、[ユーザーにメールアドレスをリクエストする]チェックボックスをオンにします。

ユーザーの電子メールアドレスは確認する必要があることに注意してください。そうでない場合、Twitterはその提供を拒否します。 ( 昇格された権限 ドキュメントページのinclude_emailパラメーターの説明を参照してください。)

96
aleemb

Twitter APIからユーザーのメールアドレスを取得できるようになり、はるかに簡単になりました。次の手順に従ってください...

  1. Goto Twitterアプリ

  2. [新しいアプリの作成]をクリックします

  3. 必要なすべての資格情報を入力し、「Twitterアプリケーションの作成」をクリックします

  4. 「権限」タブをクリックし、「ユーザーからメールアドレスをリクエストする」フィールドをチェックし、「設定を更新する」をクリックします。 (所定の写真を確認してください)

  5. ここで、PHPコードで、すべてのアプリの詳細を設定し、このコードを追加してください!

    $params = array('include_email' => 'true', 'include_entities' => 'false', 'skip_status' => 'true');

    $data = $connection->get('account/verify_credentials', $params); // get the data

    // getting Twitter user profile details $twt_id = $data->id; //Twitter user id $twt_email = $data->email; //Twitter user email

全部終わった。幸運を祈ります。 ;)

enter image description here

34
Pran

Twitterからユーザーの電子メールアドレスを取得できるようになりました(もちろん、ユーザーが許可した場合)。

XAuthを受信するには、アプリケーションをホワイトリストに登録する必要があります。

詳細はこちらをご覧ください: https://dev.Twitter.com/rest/reference/get/account/verify_credentials

6
Kevin Traas

Twitterからユーザーのメールアドレスを取得することはできません。それを見ることができます こちら 。コールバックページでフォームページを開き、そのページでユーザーのメールアドレスを取得できます。 here を使用例として参照できます

3
Hüseyin BABAL

はい、メールアドレスを取得できます。これは、いくつかの許可を記入することで可能になりました。

1.このリンクに移動: https://apps.Twitter.com/

2.作成したアプリケーション内の許可タブに移動した後

3.APPで[追加許可]チェックボックスを選択します。

4.設定を正常に更新した後、Twitterからメールアドレスを取得できます。

メールアドレスを取得できない場合は、Oauth APIリクエストURLを確認してください。

リクエストURLはこのタイプである必要があります: https://api.Twitter.com/1.1/account/verify_credentials.json?include_email=true

1

LinqtoTwitterライブラリを使用してASP.Netでこれを行った方法を次に示します http://www.bigbrainintelligence.com/Post/get-users-email-address-from-Twitter-oauth-ap

// call verify credentials api
var twitterCtx = new TwitterContext(authTwitter);
var verifyResponse =
      await
          (from acct in twitterCtx.Account
           where (acct.Type == AccountType.VerifyCredentials) && (acct.IncludeEmail == true)
           select acct)
          .SingleOrDefaultAsync();

if (verifyResponse != null && verifyResponse.User != null)
{
    User twitterUser = verifyResponse.User;
    //assign email to existing authentication object
    loginInfo.Email = twitterUser.Email;

}
1