2

需要通过传递纬度和经度来发布状态更新并附加用户位置。在他们说的FB 文档中,我们需要传递“place” FB 实体,即:

“一个对象,其中包含与该位置关联的页面的 ID 和名称,以及一个包含地理信息的位置字段,例如纬度、经度、国家和其他字段(字段将根据地理位置和信息的可用性而有所不同)”

如何从纬度和经度创建/获取这样的地名?我已阅读相关的 post1post2但无法找到可行的解决方案。

4

2 回答 2

4

如何从纬度和经度创建/获取这样的地名?

目前没有可供开发人员创建Facebook 页面或地点的 API。但是,您可以通过执行这样的 FQL 查询来获取地名......

'SELECT page_id,name,latitude,longitude FROM place WHERE distance(latitude, longitude, "LAT_HERE", "LON_HERE") < 250`

250是指它将在其中搜索的半径(m),它可以上升到50000

执行此 FQL 查询将返回 Facebook 地方页面的 id、地名、纬度和经度。

(实际上不需要获取地名,因为这page_id是您真正需要的。使用page_id,您将能够获取该 Facebook Place Page 的所有信息。)

需要通过传递纬度和经度来发布状态更新并附加用户位置。

假设您实际上是在尝试发布签到,您可以参考下面的参考资料以进一步处理您从 FQL 查询中获得的数据...

正常的状态更新(提要对话框)不同于带有位置标记的状态更新(签到),它们使用不同的 API

参考:

入住前如何获取place_id?

Facebook - 使用 PHP SDK/JavaScript SDK 发布签到

Facebook 文档

页面 FQL - http://developers.facebook.com/docs/reference/fql/page/

签入 API - http://developers.facebook.com/docs/reference/api/user/#checkins

于 2012-08-31T05:29:33.663 回答
1


如果您有纬度/经度数据,您可以搜索该地点并获取可包含在 POST 消息中的地点 ID。
请查看这些相关帖子 -
https://developers.facebook.com/docs/opengraph/actions/#taggingplaces
https://developers.facebook.com/blog/post/2012/03/07/building-better-stories-与位置和朋友/

于 2012-08-30T19:24:53.500 回答