Typescript 从我的TumblrAPI获取帖子

Typescript 从我的TumblrAPI获取帖子,typescript,angular,tumblr,Typescript,Angular,Tumblr,我需要通过api获得我的tumblr帖子 我已经成功地设置了api密钥。 我用的是Angular2,打字脚本 我正在使用jsonp,这样我就不会遇到跨源问题 这是我当前的尝试: var config = { params: { action: "query", prop: "revisions", format: "json", callback: "JSON_CALLBACK" } } var url = "http

我需要通过api获得我的tumblr帖子

我已经成功地设置了api密钥。 我用的是Angular2,打字脚本

我正在使用jsonp,这样我就不会遇到跨源问题

这是我当前的尝试:

  var config = {
    params: {
      action: "query",
      prop: "revisions",
      format: "json",
      callback: "JSON_CALLBACK"
    }
  }

  var url = "https://api.tumblr.com/v2/blog/thepoolcover.tumblr.com/posts?api_key=lqoK2G4BT9X8xnewyW0l45ky4aTKWTqQ3PzF14gefIglpIRnBz";

  this.jsonp.request(url, config).subscribe(response => {

      console.log(response);

  }); 
我没有收到typescript编译器错误,但是,我收到了浏览器异常控制台错误:

  var config = {
    params: {
      action: "query",
      prop: "revisions",
      format: "json",
      callback: "JSON_CALLBACK"
    }
  }

  var url = "https://api.tumblr.com/v2/blog/thepoolcover.tumblr.com/posts?api_key=lqoK2G4BT9X8xnewyW0l45ky4aTKWTqQ3PzF14gefIglpIRnBz";

  this.jsonp.request(url, config).subscribe(response => {

      console.log(response);

  }); 

您应该使用
JSONP\u CALLBACK
作为回调的名称,而不是
JSON\u CALLBACK
和URLSeachParams作为查询参数:

URLSearchParams search = new URLSearchParams();
search.set('action', 'query');
search.set('prop', 'revisions');
search.set('format', 'json');
search.set('callback', 'JSONP_CALLBACK');

var config = {
  search: search
};

var url = "https://api.tumblr.com/v2/blog/thepoolcover.tumblr.com/posts?api_key=lqoK2G4BT9X8xnewyW0l45ky4aTKWTqQ3PzF14gefIglpIRnBz";

jsonp.request(url, config).subscribe(response => {
  console.log(response);
}); 
以下是相应的PRUNKR:


如果您将url直接放入浏览器中,它可以正常工作。它返回json格式的帖子。但我正努力通过上面的代码获得它。不知道我做错了什么。我在angular 2中尝试了一个标准的http get,但遇到了一个跨源问题。此外,在过去,我会进行ajax调用,但我不确定如何在Angular2中进行调用。您还应该使用
URLSearchParams
作为查询参数。我更新了我的答案。。。