Tumblr v2 API访问私人博客

时间:2012-06-18 20:06:38

标签: api private tumblr

一直在搜索高低,无法找到相关答案。我想知道是否有人遇到过Tumblr API v2调用,它可以让你从私人博客访问数据。我想在提供身份验证的同时发布和检索我的一些私人博客中的列表。

谢谢

2 个答案:

答案 0 :(得分:5)

使用对API的正确OAuth调用以及私有博客的访问令牌,可以使用Tumblr API v2访问该私人博客的至少部分

以下是我所做的一些观察:

  • api.tumblr.com/v2/的博客 / {基主机名} /的帖子

    通常,您使用公共API密钥进行此调用,这样您就可以访问非私有的任何Tumblr的帖子。

    然而! 好消息:如果您在提出此请求时包含完整OAuth标头,则< strong>将返回私人Tumblr帐户的帖子列表。当然,您需要为该Tumblr访问令牌才能执行此操作。是的,我试过这个,完成了这个,它确实有效。

    如果使用您的消费者API密钥,例如

    api.tumblr.com/v2/blog/{base-hostname}/posts?api_key=w8878374r384r...
    

    然后你什么也得不到。您必须使用所有正确的OAuth参数进行完全身份验证的请求。

  • api.tumblr.com/v2/的博客 / {基主机名} /的信息

    根本不会为私人博客工作,即使在使用所有正确的OAuth内容进行API调用时也是如此。

  • api.tumblr.com/v2/的用户/信息

    通常,这会返回给定经过身份验证的用户的“博客”列表。但是,任何私人tumblrs 都不会出现在此博客列表中。

注意:

  • 我没有使用私人博客测试过许多其他API调用,因此我无法确定创建/编辑/删除帖子是否有效。

  • 我还没有使用xAuth测试过这个,只有常规的OAuth和通过“网络授权流程”获得的标准访问令牌

答案 1 :(得分:-1)

$conskey = "CONSUMER KEY";
$conssec = "CONSUMER SECRET";

$tumblr_blog = "myblog.tumblr.com";
$to_be_posted = "This is the text to be posted";

$oauth = new OAuth($conskey,$conssec);
$oauth->fetch("http://api.tumblr.com/v2/blog/".$tumblr_blog."/post", array('type'=>'text', 'body'=>$to_be_posted), OAUTH_HTTP_METHOD_POST);

$result = json_decode($oauth->getLastResponse());

if($result->meta->status == 200){
  echo 'Success!';
}

尝试使用上面的代码使用API​​发布到您的博客。

希望有所帮助。