我是一名Java开发人员,无法找到很多资源来开发基于Java的facebook应用程序。我在Java上开发一个Facebook应用程序,在某些时候,它会读取用户的收件箱。我能够创建一个登录流程并获得一个长期访问令牌。
但由于我对JSON概念不熟悉,我无法解析facebook响应以获取所需数据。
我已经阅读了一些教程并了解了JSON的基础知识,并且能够编写解析Simple JSON结构的代码,例如:
{
"id": 1,
"firstname": "Brad",
"languages": [
{ "lang":"en" , "knowledge":"proficient" },
{ "lang":"fr" , "knowledge":"advanced" },
]
"job":{
"place":"Silicon Valley",
"name":"Microsoft",
} }
但是,我无法解析Facebook的回应,因为它看起来如此复杂,我已经提到各个地方的任何示例或示例代码来解析Facebook对/me/inbox
请求的回复而且无法解决找到任何。
这里我正在寻找任何示例代码来解析收件箱JSON对象以获取我的应用程序所需的信息。
我们非常感谢您的努力。
谢谢。
编辑:我正在寻找普通JSP或Servelts中的示例代码。
答案 0 :(得分:0)
Spring Social是你的朋友。不要陷入与Spring Security集成的困境(虽然有很多例子),因为JavaScript登录过程足以为用户获取一个身份验证令牌,然后您可以查询Facebook的API - 只需使用Spring Social作为一个库,用于隐藏JSON的复杂性,并为您提供直接使用的java对象。
答案 1 :(得分:0)
我最终不得不亲自去做。父JSON元素'data'包含我正在寻找的数据。然后我使用这个tutorial来格式化它并以类似Facebook的方式显示它。
我必须实际挑选出我实际需要的数据。希望这有帮助!
您必须使用JSONObject
和JSONArray
,您可以从getJSONObject()
和getJSONArray()
获取。获得所需的JSONObject
或JSONArray
后,请使用getJSONString()
获取所需的值。
上面提到的教程适用于Android,但总体思路仍然存在。如果您有任何疑问,请告诉我。我已经在JSP
和Java servlets
中完成了一些工作。