获取完整的JSON请求URL以进行故障排除

时间:2014-07-02 14:37:58

标签: javascript ajax json angularjs

出于测试/故障排除的目的,当JSON请求失败时,我希望能够看到它尝试访问的URL。所以当我提出这样的请求时....

return $http({
        url: base_url + 'url_string', 
        method: "GET",

        // Set the proper parameters
        params: { 
          id: source,
          start: year + '-' + month + '-01',
          end: year + '-' + month + '-' + month_days,
          interval: 'day',
          city: location
          }
      });

 ...

 // See what it attempted
 console.log(???);

如何获取该网址?

3 个答案:

答案 0 :(得分:1)

这很容易,如果您使用.then作为$ http承诺,那么您可以获得比通常更多的信息

$http(/*your stuff*/).then(function(response){
  console.log(response.config.url)
})

响应包含

response = {
  headers: {},
  config: {},
  data: {}, 
  status: 200, 
  statusText: 'load'
}

答案 1 :(得分:0)

使用浏览器的网络标签查看已发出的请求或以编程方式执行以下操作:

var opts = {
    url: base_url + 'url_string', 
    method: "GET",

    // Set the proper parameters
    params: { 
      id: source,
      start: year + '-' + month + '-01',
      end: year + '-' + month + '-' + month_days,
      interval: 'day',
      city: location
      }
  };



 var reqString = base_url + 'url_string' + "?";
 var params = [];
 Object.keys(opts.params).forEach(function (key) {
     params.push(key + "=" + opts.params[key]);
 });
 reqString += params.join('&');

 console.log(reqString);

 return $http(opts);

答案 2 :(得分:0)

如果您需要的信息多于浏览器开发工具提供给您的信息,请使用Fiddler之类的工具。