web-dev-qa-db-fra.com

Pouvons-nous obtenir un identifiant de courriel de Twitter oauth API?

Comment obtenir l'identifiant email de l'utilisateur qui a accepté mon application Twitter?

J'ai traversé beaucoup de forums. Mais ils ont mentionné, ce n'est pas possible. Aussi ces postes sont âgés de plus d'un an. Puis-je savoir s'il est possible d'obtenir l'identifiant de messagerie électronique de l'utilisateur via l'API Twitter en utilisant PHP?

Je reçois les détails de l'utilisateur Twitter en utilisant l'URL suivante:

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

51
Vinoth Babu

Ceci est maintenant possible en remplissant un formulaire pour demander autorisations surélevées :

  1. Allez à https://support.Twitter.com/forms/platform
  2. Sélectionnez "J'ai besoin d'accéder à des autorisations spéciales"
  3. Entrez le nom et l'ID de l'application. Ceux-ci peuvent être obtenus via https://apps.Twitter.com/ - l'ID de l'application est la partie numérique de la barre d'adresse du navigateur après avoir cliqué sur votre application.
  4. Demande d'autorisations: "Adresse électronique"
  5. Soumettre et attendre la réponse
  6. Une fois votre demande acceptée, un paramètre d'autorisation supplémentaire est ajouté dans la section "Autorisations" de votre application Twitter. Allez dans "Autorisations supplémentaires" et cochez simplement la case "Demander les adresses électroniques des utilisateurs".

Notez que l'adresse e-mail de l'utilisateur doit être vérifiée, sinon Twitter refuse de la fournir. (Voir include_email description du paramètre dans autorisations surélevées page doc.)

96
aleemb

Vous pouvez maintenant récupérer l'adresse électronique d'un utilisateur à partir de l'API Twitter, ce qui est beaucoup plus simple. Il suffit de suivre ces étapes ...

  1. Goto applications Twitter

  2. Cliquez sur 'Créer une nouvelle application'

  3. Remplissez toutes les informations d'identification requises et cliquez sur 'Créer votre application Twitter'

  4. Maintenant, cliquez sur l'onglet 'Autorisations' -> Cochez le champ 'Demander les adresses électroniques des utilisateurs et cliquez sur' Paramètres de mise à jour '. (vérifier l'image donnée)

  5. Maintenant, dans votre code PHP, définissez tous les détails de l'application et ajoutez ce code!

    $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

Terminé. J'espère que cela vous aidera, bonne chance. ;)

enter image description here

34
Pran

Il est maintenant possible de récupérer l'adresse email d'un utilisateur sur Twitter (si l'utilisateur le permet, bien sûr).

Vous devrez faire une demande pour que votre demande soit inscrite sur la liste blanche afin de recevoir xAuth.

Cliquez ici pour plus d’informations: https://dev.Twitter.com/rest/reference/get/account/verify_credentials

6
Kevin Traas

Il n'est pas possible d'obtenir l'adresse électronique de l'utilisateur sur Twitter. Vous pouvez le voir ici . Vous pouvez ouvrir une page de formulaire sur votre page de rappel et obtenir l'adresse électronique de l'utilisateur sur cette page. Vous pouvez vous référer ici pour un exemple d'utilisation

3
Hüseyin BABAL

Oui, vous pouvez obtenir une adresse e-mail.Ceci est maintenant possible en remplissant une permission.

1.Allez sur ce lien: https://apps.Twitter.com/

2.Après avoir accédé à l'onglet permission à l'intérieur de votre application créée

3.Sélectionnez la case à cocher Autorisation d’ajout dans votre APP.

4.Après avoir mis à jour les paramètres, vous pouvez obtenir une adresse électronique de Twitter.

Si, dans certains cas, vous ne pouvez pas obtenir d'adresse e-mail, veuillez vérifier votre Oauth URL de demande Api.

L'URL de votre demande doit être de ce type: https://api.Twitter.com/1.1/account/verify_credentials.json?include_email=true

1
Chirag Prajapati

Voici comment je l'ai fait dans ASP.Net en utilisant la bibliothèque linqtoTwitter 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