$http.get returns Html 响应代码而不是 json 对象
$http.get returns Html code in response instead of json object
我正在尝试使用 angular $http.get 方法从外部 API 获取一些数据,但我得到的是 'html code' 而不是 'json object' 作为回应。当我尝试使用 jquery ajax 调用 API 时,它工作正常。这是代码
$http.get({
"url": 'https://ebaydemo.stamplayapp.com/api/cobject/v1/projects',
"crossDomain": true,
"headers": {
"accept": "application/json",
"content-type": "application/json"
},
"params": {
"populate": false,
"n": 10
},
"processData": false
}).success(function (response) {
console.log(response);// Response has 'html code'
});
编辑
这是我现在收到的一小段回复:
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-- >
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<base href="/">
<title></title>
我创建了一个 HTML 片段来调用您的代码,如下所示:
<html>
<body ng-app="app" ng-controller="eBayController">
<input type="button" value="EBay" ng-click="getFromEbay()"></input>
<script rc="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular.min.js"></script>
<script src="ebay.js"></script>
</body>
然后将 JavaScript 缩减为:
/* global angular */
angular.module("app",[])
.controller('eBayController', function($scope,$http) {
$scope.getFromEbay = function() {
$http.get("https://ebaydemo.stamplayapp.com/api/cobject/v1/projects")
.success(function (response)
{
console.log(response);
});
}
})
我得到了一个 JSON 对象。
您的请求格式有误。这是一个 plunker,您可以在其中查看它是如何工作的。
http://plnkr.co/edit/QFCs8kiPvcErmeRePBMd
看看 app.js
以及如何使用 $http
我正在尝试使用 angular $http.get 方法从外部 API 获取一些数据,但我得到的是 'html code' 而不是 'json object' 作为回应。当我尝试使用 jquery ajax 调用 API 时,它工作正常。这是代码
$http.get({
"url": 'https://ebaydemo.stamplayapp.com/api/cobject/v1/projects',
"crossDomain": true,
"headers": {
"accept": "application/json",
"content-type": "application/json"
},
"params": {
"populate": false,
"n": 10
},
"processData": false
}).success(function (response) {
console.log(response);// Response has 'html code'
});
编辑 这是我现在收到的一小段回复:
<!doctype html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-- >
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<base href="/">
<title></title>
我创建了一个 HTML 片段来调用您的代码,如下所示:
<html>
<body ng-app="app" ng-controller="eBayController">
<input type="button" value="EBay" ng-click="getFromEbay()"></input>
<script rc="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular.min.js"></script>
<script src="ebay.js"></script>
</body>
然后将 JavaScript 缩减为:
/* global angular */
angular.module("app",[])
.controller('eBayController', function($scope,$http) {
$scope.getFromEbay = function() {
$http.get("https://ebaydemo.stamplayapp.com/api/cobject/v1/projects")
.success(function (response)
{
console.log(response);
});
}
})
我得到了一个 JSON 对象。
您的请求格式有误。这是一个 plunker,您可以在其中查看它是如何工作的。
http://plnkr.co/edit/QFCs8kiPvcErmeRePBMd
看看 app.js
以及如何使用 $http