没有卡分享图像到Twitter

时间:2017-05-31 20:04:29

标签: javascript svg twitter oauth sharing

鉴于某个地址的图片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提供界面。

然而,在我的情况下,当发送推文时,而不是返回到页面的链接以及从中提取的一些文本,我只想要一张图片。

1 个答案:

答案 0 :(得分:-1)

Twitter没有官方的共享图片方式。您必须使用Twitter card。这是我one webpage with nice image。在Twitter card validator上测试该网址,您将获得完整的图像。这就像你用Bloomberg的推特状态链接一样。 Now you can click this link to tweet which is of my that webpage(当然你可以删除那条推文,这是测试的例子)。您可以使用自定义文本选项获得大图像。这些都是你想要的。

以上Twitter分享超链接的参数

我给你的超链接就像:

https://twitter.com/intent/tweet?text=Cheapest%20CDNs%20With%20HTTPS%2C%20IPv6%2C%20HTTP%2F2%2C%20Brotli&url=https%3A%2F%2Fthecustomizewindows.com%2F2017%2F06%2Fcheapest-cdns-https-ipv6-http2-brotli%2F&hastag=AbhishekGhosh&via=AbhishekCTRL&original_referer=https%3A%2F%2Fthecustomizewindows.com%2F2017%2F06%2Fcheapest-cdns-https-ipv6-http2-brotli%2F

https://twitter.com/intent/tweet是不变的部分。 ?text=是您想要的文字。 &url=是您要分享的网址。 &via=是可选的相关帐户。在大多数情况下,&original_referer=&url=相同,&hashtags是您想要的人质。 &hashtags不起作用。

但是你想要一张图片而不是网页。这很棘手。

您需要什么

你想要什么需要像PHP-MySQL一样的网络软件。应用程序将编写一个唯一的URL超时用户使用HTML标记为用户生成的带有图像的网页完成工作。 Twitter卡是关于网页如何具有标记,图像,域名网站管理员设置等的问题。您可以使用类似PHP的语言通过网页的HTML标记设置该首选图像。

原型应用示例

作为使用WordPress开发的这种想法的例子,当我没有发表文章时,我有了图像,但预览的URL是私有的。 WordPress可以将未发表的文章公之于众。这可以用4个WordPress插件作为基本示例进行测试:

  1. https://wordpress.org/plugins/public-post-preview/(未发布的帖子有公开预览)
  2. https://wordpress.org/plugins/developer-share-buttons/(生成推特分享链接)
  3. https://wordpress.org/plugins/twitter-cards-meta/(生成twitter元标记)
  4. https://wordpress.org/plugins/live-composer-page-builder/(为注册用户提供在WordPress前端编辑的方法)
  5. 当然,有更新的WordPress API可以在其他服务器上执行此操作。