via*_*ian 5 api facebook facebook-fql facebook-graph-api
还有我怎样才能建立一个链接以查看在facebook.com上的消息,如果我有消息ID的问题,但它是无人接听.如果我使用/ me/inbox API端点获取线程的id并且需要将用户重定向到显示此线程的Facebook本身,该怎么办?我如何构建URL.似乎有像http://www.facebook.com/messages/?action=read&tid=id.143666952390138这样的网址,其中线程ID是最后的数字.但也有一些陌生的网址,如http://www.facebook.com/messages/?action=read&tid=27726d81656e4c07ae5654116cccb724,其中先前的规则不起作用.有没有使用Graph API或FQL获取线程URL的解决方案?
如果你拥有的id是一个字符串对象(可能是一个guid),这是来自Facebook的旧消息系统存储结构.现在他们已经更新到一个新的存储结构,需要将旧的存储结构迁移到新的存储结构中
所以你有一个相当容易的检查:
如果线程id是一个long(Int64/BigInt),那么你有一个新线程可以使用
http://www.facebook.com/messages/?action=read&tid=id.THREAD_ID
如果线程id是一个字符串,那么你有一个较旧的线程,可以使用
http://www.facebook.com/messages/?action=read&tid=THREAD_ID
许多编程语言都有自己的形式来检查值的类型.
var threadId = (string)data.thread_id;
var longVal = 0L;
var isLong = Int64.TryParse(threadId, out longVal);
var threadUrl = (isLong) ?
"http://www.facebook.com/messages/?action=read&tid=id." + threadId :
"http://www.facebook.com/messages/?action=read&tid=" + threadId;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13049 次 |
| 最近记录: |