gpt4 book ai didi

json - 如何从JSON对象检索值并使用google-plus:0.1插件进行身份验证

转载 作者:行者123 更新时间:2023-12-02 16:00:56 26 4
gpt4 key购买 nike

我在Grails应用程序中使用google-plus:0.1插件来启用使用Google+的登录,我已经成功登录,并且正在获取JSON对象。

插件内部有一个代码,他们将JSON字符串转换为JSON对象并返回给我。
这是插件内的代码:

public Person getCurrentUserProfile() {
Person person
try {
URL url = new URL("https://www.googleapis.com/plus/v1/people/me?access_token=${this.accessToken}")
def jsonString = JSON.parse(url?.text)
println "URL : " + url.toString()
println "JSON : " + jsonString

person = Person.parseJSONForPerson(jsonString)
} catch (GooglePlusException e) {
e.printStackTrace()
}
return person
}

从这里我得到JSON对象
控制台中打印的Json字符串是:-
URL : https://www.googleapis.com/plus/v1/people/me?access_token=ya29.lgFPSagK5lQ8l19hWuxra8AxsXzZjxlbCetP-aWpUHbq2_djrdvj-3XMFMEgl9r4WfaiLvo7Q3RfJQ
JSON : [etag:"RqKWnRU4WW46-6W3rWhLR9iFZQM/eUT2aym4R39YBu_ra8ZlhztXJ6w", organizations:[[startDate:1995, title:Science, primary:false, name:St.Joseph's Convent, endDate:2008, type:school]], image:[isDefault:false, url:https://lh5.googleusercontent.com/-kuh1_bl_8is/AAAAAAAAAAI/AAAAAAAAADA/ZZfY8ob2QrQ/photo.jpg?sz=50], isPlusUser:true, emails:[[value:kartiki.sahu@crowdera.co, type:account]], kind:plus#person, url:https://plus.google.com/102332421579091283598, id:102332421579091283598, verified:false, name:[familyName:Sahu, givenName:Kartiki], domain:crowdera.co, circledByCount:9, gender:female, displayName:Kartiki Sahu, objectType:person]

我无法从收到的对象中获取电子邮件。

我尝试获取familyName为
person.name.familyName我明白了它的值(value),
但对于GivenName,它显示为空;对于电子邮件和组织,它显示为[]等空列表。

我的代码:-
def code = request.getParameter("code")
String accessToken = accessTokenService.generateAccessToken(code)
googlePlusService.accessToken = accessToken
def person = googlePlusService.getCurrentUserProfile()

请帮忙。

最佳答案

您可以像这样获得值(value)。

      String str="""{
"kind": "plus#person",
"etag": "\\"RqKWnRU4WW46-6W3rWhLR9iFZQM/eUT2aym4R39YBu_ra8ZlhztXJ6w\\"",
"gender": "female",
"emails": [
{
"value": "kartiki.sahu@crowdera.co",
"type": "account"
}
],
"objectType": "person",
"id": "102332421579091283598",
"displayName": "Kartiki Sahu",
"name": {
"familyName": "Sahu",
"givenName": "Kartiki"
},
"url": "https://plus.google.com/102332421579091283598",
"image": {
"url": "https://lh5.googleusercontent.com/-kuh1_bl_8is/AAAAAAAAAAI/AAAAAAAAADA/ZZfY8ob2QrQ/photo.jpg?sz=50",
"isDefault": false
},
"organizations": [
{
"name": "St.Joseph's Convent",
"title": "Science",
"type": "school",
"startDate": "1995",
"endDate": "2008",
"primary": false
}
],
"isPlusUser": true,
"circledByCount": 9,
"verified": false,
"domain": "crowdera.co"
}
"""
def jsonString = new JsonSlurper().parseText(str)
render jsonString.emails.value
}

我将得到以下列表的输出。
['kartiki.sahu@crowdera.co']

关于json - 如何从JSON对象检索值并使用google-plus:0.1插件进行身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30908619/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com