我有谷歌正式工作的oauth授权,我从联系人api获取数据.现在,我想以编程方式获取gmail用户的名字,姓氏和图片.哪个google api可以用来获取这些数据?
小智 16
联系人API可能有效,但您必须请求用户授权才能访问所有联系人.如果我是一个用户,这会让我担心授予权限(因为这实际上允许你向我的所有联系人发送垃圾邮件......)
我发现这里的响应很有用,只询问"基本配置文件信息":
我已经成功使用了这种方法,并且可以确认它返回以下Json对象:
{
"id": "..."
"email": "...",
"verified_email": true,
"name": "....",
"given_name": "...",
"family_name": "...",
"link": "...",
"picture": "...",
"gender": "male",
"locale": "en"
}
Run Code Online (Sandbox Code Playgroud)
小智 5
使用此代码获取Google用户的名字和姓氏
final HttpTransport transport = new NetHttpTransport();
final JsonFactory jsonFactory = new JacksonFactory();
GoogleIdTokenVerifier verifier = new GoogleIdTokenVerifier.Builder(transport, jsonFactory)
.setAudience(Arrays.asList(clientId))
.setIssuer("https://accounts.google.com")
.build();
GoogleIdToken idToken = null;
try {
idToken = verifier.verify(googleAuthenticationPostResponse.getId_token());
} catch (GeneralSecurityException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
GoogleIdToken.Payload payload = null;
if (idToken != null) {
payload = idToken.getPayload();
}
String firstName = payload.get("given_name").toString();
String lastName = payload.get("family_name").toString();
Run Code Online (Sandbox Code Playgroud)
我在联系人 API 论坛中查找时找到了答案。当您获得结果提要时,只需在 Java 中执行以下操作 -
String Name = resultFeed.getAuthors().get(0).getName();
String emailId = resultFeed.getId();
Run Code Online (Sandbox Code Playgroud)
我仍在寻找一种获取用户个人资料图片的方法。
| 归档时间: |
|
| 查看次数: |
38432 次 |
| 最近记录: |