【问题标题】:how to get email id using oauth如何使用 oauth 获取电子邮件 ID
【发布时间】:2015-12-11 23:06:16
【问题描述】:

我正在尝试使用以下代码获取用户个人资料信息。我正在使用 scribe 来获取信息。我可以获取 familyName 和 givenName 等,但它没有返回我的电子邮件 ID。

我正在使用以下代码:

OAuthRequest request = new OAuthRequest(
    Verb.GET,
    "https://social.yahooapis.com/v1/me/guid? format=xml"
); 
service.signRequest(accessToken, request);
request.addHeader("realm", "yahooapis.com"); 
Response response = request.send();

这是我得到的回复:

{
    "profile": {
        "guid":"CGGT5LNT7NXGFK64QW7FQN5UQM",
        "ageCategory":"A",
        "familyName":"gto",
        "givenName":"CTSDemo",
        "image": {
            "height":192,
            "imageUrl":"https://s.yimg.com/dh/ap/social/profile/profile_b192.png",
            "size":"192x192",
            "width":192
        },
        "intl":"us",
        "jurisdiction":"us",
        "lang":"en-US",
        "location":"Bangalore",
        "memberSince":"2014-08-03T08:23:27Z",
        "nickname":"CTSDemo",
        "notStored":false,
        "nux":"3",
        "profileMode":"PUBLIC",
        "profileStatus":"ACTIVE",
        "profileUrl":"http://profile.yahoo.com/CGGT5LNT7NXGFK64QW7FQN5UQM",
        "updated":"2014-08-29T12:00:44Z",
        "isConnected":false,
        "profileHidden":false,
        "bdRestricted":true,
        "profilePermission":"PUBLIC",
        "uri":"https://social.yahooapis.com/v1/user/CGGT5LNT7NXGFK64QW7FQN5UQM/profile",
        "cache":true
    }
}

【问题讨论】:

  • 这方面有什么更新吗?
  • 是的,我必须允许雅虎应用返回响应
  • 我授予了我的应用程序的权限,但仍然无法获取电子邮件地址。
  • @Logan 你找到解决方案了吗?

标签: java security oauth yahoo scribe


【解决方案1】:

我找到了解决方案!

您需要在 yahoo 中更改您的应用程序的权限。

Url,提供用户信息:https://social.yahooapis.com/v1/user/me/profile

并且不要忘记添加 header Authorization: Bearer [your_access_token]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-03
    • 2019-12-22
    • 1970-01-01
    • 1970-01-01
    • 2021-03-04
    • 2013-03-29
    相关资源
    最近更新 更多