没有身份验证弹出Tumblr像<a> link</a>

时间:2015-03-26 00:23:53

标签: javascript tumblr tumblr-themes

截至目前,我正在构建一个自定义Tumblr页面,该页面基本上将帖子内容聚合为1页。

问题是,我们不能将Tumblr标签用于Like,我们已经成功地使Reblog工作,但是当我尝试使用hrefed来实现这种模式时,

'http://www.tumblr.com/like/' +誓+ '?ID =' + ID'

和/不喜欢/不喜欢帖子。

除了访问被拒绝的页面之外,我什么也得不到。我不应该至少看到某种身份验证弹出窗口吗?不知道还有什么可以做的。需要使这个LIKE功能正常工作,并且使用Tumblr {like button}不是一个选项,因为我们没有使用{posts block}而是通过JSON API提取所有内容。

1 个答案:

答案 0 :(得分:0)

找到答案!

所以,让我为大家分解一下......我只是要讨论在我攻击Tumblr API时发现的所有问题和警告。在大多数情况下,您不会在内部网上找到任何这些答案。如果你这样做,他们很可能只是我自己在论坛上发布的问题的答案。

  1. Tumblr应用程序由托管的任何页面模板定义 通过Tumblr或不会使用Tumblr API。应用 必须在Tumblr注册: https://www.tumblr.com/oauth/apps

  2. 创建时所有Tumblr应用程序都会获得一组密钥 访问Tumblr API。 OAuth使用者密钥又称API密钥密钥

  3. Tumblr API主要分为两种不同类型 方法。第三个是“标记”,用于拉标记的帖子 来自博客或用户。

  4. “博客方法”,只需要提交消费者 键。需要完整OAuth签名请求的“用户方法” 符合OAuth 1.0a协议。 “用户喜欢”最多返回 一次50条记录。这在Tumblr API中没有记录 文档。

  5. 目前,Tumblr API文档指示开发人员使用众多开源API客户端之一。但是,所有这些客户端似乎都是服务器端应用程序。对于仅使用显式授权支持OAuth1或OAuth2的Tumblr等提供程序,需要使用可能未在浏览器中公开的密钥对身份验证流进行签名。

    HelloJS 通过使用oauth_proxy定义的中间网络服务来解决此问题。此服务从数据库中查找秘密并执行配置access_token所需的握手。对于OAuth1,Web服务还会签署后续API请求。

    HelloJS - http://adodson.com/hello.js/是唯一可用且免费的客户端Oauth库。有许多服务以每个api命中为基础充当代理。 HelloJS OAuth代理可从以下位置获得:https://auth-server.herokuapp.com/

    使用以下社交帐户凭据之一登录OAuth代理:Google,Windows Live,Facebook或Yahoo。 OAuth代理充当安全的“中间人”,允许安全地存储“密钥”,同时仍允许客户端OAuth身份验证。

    HelloJS 有一个特殊的Tumblr模块 - http://adodson.com/hello.js/demos/tumblr.html

    HelloJS 利用新的Javascript Promises异步函数规范 - https://www.promisejs.org/

    Javascript Promises 在传递从异步AJAX调用接收的对象时有一些独特的规则。 一切都在回调中完成。 事实上,jQuery所谓的承诺与其他人所谓的承诺完全不同。 希望这有助于未来的Tumblr集成。

    约翰