一条特定推文的推特链接URL

93

我有一些使用Twitter API获取推文的JavaScript代码。我解析数据并使用jQuery生成DOM的HTML。

我想要显示的一个方面是“查看此推文”的链接-听起来有点傻,但它允许用户获取特定推文的URL。

我正在生成一个带有href的a标签。 URL的格式为:

http://twitter.com/{twitter-user-id}/status/{tweet-status-id}

花括号中的内容是从推文中提取出来的实际数据(不包括花括号)。例如:

http://twitter.com/Atechtrader/status/57432099984130050

在操作过程中,对于一些推文来说这是有效的,但对于其他的推文则不行。对于失败的情况,Twitter服务器会响应一个内容,表示所请求的页面不存在。

我是做错了什么吗?


1
是的,我做错了一些事情——我没有提取字符串ID。我的错。对于噪音感到抱歉。 - Zhami
6个回答

157

https://twitter.com/statuses/ID应该有效。
它会重定向到所需的状态。


31
如果您想要一个可以在移动设备上打开的链接,请使用较长的表单。对于移动设备,此链接不起作用:http://twitter.com/twitter-user-screen-name/status/tweet-id-str - UKatz
2
@UKatz 很遗憾,那个链接似乎已经失效了 :( - clapas
1
@clapas 我认为那只是一个示例URL,你需要用适当的值替换 twitter-user-screen-nametweet-id-str 以获得一个可用的链接。 - user1009387
这在电脑浏览器上可以运行。但是,如果您使用移动设备,则Twitter服务器将自动重定向到 https://mobile.twitter.com/statuses/ID ,这会导致错误页面。因此,总体解决方案仍然是 https://twitter.com/{twitter-user-id}/status/{tweet-status-id} - Owen Zhao
这在 macOS 浏览器上也失败了,你需要像移动设备一样使用 Twitter 用户 ID。 - mmmmmm

69

3
这是唯一的解决方案,适用于两者而无需明确提供用户名(如果你问我的话,用户名是易变的...没有什么比按照用户的心情放弃所有链接更糟糕的了...)。话虽如此,有人知道这是否被“支持”吗?这似乎是一种巧妙的方法... - nokturnal
1
这也是Twitter在将URL放入推文(流API)中使用的方法。非常简单,无需根据用户ID构建URL。 - Maziyar
2
在使用 Twitter 搜索 API 2 时,应该使用 conversation_id 字段而不是 id - Guido

49

2
我花了一点时间才明白你的意思是从推文对象中取出id_str并将其输入为sagivo答案的ID:https://twitter.com/statuses/[id_str] - Dominic
1
这仅适用于JavaScript和其他不支持64位整数的环境。 - chribsen

20

谢谢,我在移动设备上访问 https://twitter.com/statuses/[id_str] 时遇到了问题,但是你的解决方案在移动设备上有效 ;) - Christian Navelot

7

您可以使用

'https://www.twitter.com/'+ user.screen_name+'/status/' + id_str


4

@seyfi-dertli的回答包括移动端,但也适用于桌面端。 - Leopold Joy
你试过了吗?如果你没有id_user,只能使用网页上的id_tweet。而且,https://twitter.com/User_ID/statuses/ID 就是全部。 - Kiều Văn Thái
@Jeff Puckett的解决方案对我在网页和移动端都有效。 - Leopold Joy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接