Можем ли мы получить идентификатор электронной почты от Twitter oauth API?

Как получить идентификатор электронной почты пользователя, принявшего мое приложение Twitter?

Я прошел через множество форумов. Но они упомянули, это невозможно. Также эти должности старше одного года. Могу ли я узнать, можно ли получить идентификатор электронной почты пользователя через twitter API с помощью PHP?

Я получаю информацию о пользователе Twitter, используя следующий URL:

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

Теперь это возможно, заполнив форму для запроса повышенных разрешений :

  1. Перейдите на страницу https://support.twitter.com/forms/platform
  2. Выберите «Мне нужен доступ к специальным разрешениям»
  3. Введите имя и идентификатор приложения. Их можно получить с помощью https://apps.twitter.com/ – идентификатор приложения – это числовая часть в адресной строке браузера после нажатия на ваше приложение.
  4. Запрос на получение разрешений: «Адрес электронной почты»
  5. Отправить и подождать ответа
  6. После того, как ваш запрос будет предоставлен, в разделе «Разрешение» вашего твиттера добавляется настройка разрешения на добавление. Перейдите в раздел «Дополнительные разрешения» и установите флажок «Запросить адреса электронной почты от пользователей».

Обратите внимание, что адрес электронной почты пользователя должен быть проверен, иначе Twitter откажется его предоставить. (См. Описание параметра параметра include_email на странице с дополнительными документами с повышенными правами ).

Теперь вы можете получить адрес электронной почты пользователя из twitter API, и это намного проще. Просто выполните следующие шаги …

  1. Перейти к 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

Все сделано. Надеюсь, это поможет вам, удачи. 😉

введите описание изображения здесь

Теперь можно получить адрес электронной почты пользователя из Твиттера (если это разрешает пользователь, конечно).

Вам нужно будет подать заявку, чтобы ваше приложение было белым, чтобы получить xAuth.

Подробнее здесь: https://dev.twitter.com/rest/reference/get/account/verify_credentials

Невозможно получить адрес электронной почты пользователя из твиттера. Вы можете увидеть это здесь . Вы можете открыть страницу формы на своей странице обратного вызова и получить адрес электронной почты пользователя на этой странице. Вы можете здесь ссылаться, например, на использование

Да, вы можете получить адрес электронной почты. Теперь это возможно, заполнив какое-то разрешение.

1. Поделитесь ссылкой: https://apps.twitter.com/

2.После перехода на вкладку разрешения внутри созданного приложения

3.Выберите флажок Допускание разрешения в APP.

4. После успешного обновления вы можете получить адрес электронной почты из Twitter.

Если в некоторых случаях вы не можете получить адрес электронной почты, пожалуйста, проверьте URL-адрес запроса Oauth Api.

Ваш URL-адрес запроса должен быть такого типа: https://api.twitter.com/1.1/account/verify_credentials.json?include_email=true

Вот как я это сделал в ASP.Net, используя библиотеку 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; }