【发布时间】:2017-11-01 18:56:49
【问题描述】:
给定某个地址的图片,http://www.thissite.will/never/be-finished.png,将其分享到 Twitter 的最简单方法是什么,最好不用卡片?
用户自定义 SVG,当他们满意时,我将其转换为 PNG 并将其存储在我的服务器上。
我想让他们选择在 Twitter 上分享图片。他们点击一个按钮(我可以实现),然后打开一个对话框,他们可以在其中添加到推文(应该已经包含图片)。
我知道以前在这个网站上也有人问过类似的问题,但我确实不想使用“卡片”来分享图片。相反,我想要一个典型的、非卡片式推文,只有一张图片(如this)。
我反复浏览了 Twitter 开发人员文档,但找不到有用的信息。不推荐使用POST statuses/update_with_media 方法,并且建议替换“上传媒体指南”的链接已损坏。我认为This guide 是它打算链接的内容,但它没有 JavaScript 代码来建议应该如何实际实现。
请帮忙。
我的尝试,基于POST media/upload:
$.ajax({
url: "https://upload.twitter.com/1.1/media/upload.json",
format: "post",
data: {"data" : link}
}).success(function(response) {
console.log(":)");
console.log(response);
}).fail(function(response) {
console.log(":(");
console.log(response.responseText);
});
这失败了。 responseText 是 {"errors":[{"code":215,"message":"Bad Authentication data."}]}。
基本上,我想做一些类似于 StackOverflow 所做的事情。当您单击问题上的“共享”,然后选择 Twitter 时,会弹出一个新窗口,其中包含指向问题的链接,用户可以在其中编写自己的消息。 (Twitter 提供了接口。)
然而,在我的情况下,当发送推文时,而不是有返回页面的链接和从中提取的一些文本,我只想有一张图片。
【问题讨论】:
-
data:.. 实际上不是 URL,而是Data URI
-
@StefanHegny 谢谢!这有帮助。关于如何将其分享到 Facebook 的想法?
-
不是真的,抱歉。希望一些专家加入...你想分享到 FB 或 twitter 吗?您似乎将这两者混为一谈(现在您说的是 facebook,但问题被标记为 twitter)
-
@StefanHegny 推特。对不起! (嗯,两者都有,但 Facebook 是我在另一个问题中描述的稍微不同的情况。)我会解决这个问题。
-
好的,所以我不能编辑赏金文本 (?),但我的意思是我正在寻找一个共享 PNG 数据的程序(因为我已经如上所述)在 Twitter 上,而不是 SVG 数据,因为我已经完成了更改格式的工作。
标签: javascript svg twitter oauth sharing