我在这个问题上花了好几个小时,但我无法让它发挥作用。
问题如下:
我必须从某个地址获取JSON。我已经验证了服务器的响应,它是一个有效的JSON。最重要的是,就我的网络而言,它的工作正常。
(如果我有足够的声誉,我会提供一张图片证明这一点)
但是,在我的客户端应用程序中,我不断收到404代码。
这是我的代码:
(function(){
var app = angular.module('queryApp', ['ngRoute'])
.controller('queryController', ['$scope', '$http', function ($scope, $http){
this.inputChange = function (){
$http.jsonp('http://localhost:3000/orders?callback=JSON_CALLBACK').
success(function(data, status){
console.log(status)
}).
error(function(data, status){
console.log(status)
});
};
}]);
})();
<!DOCTYPE html>
<html ng-app="queryApp">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!-- Roboto Font -->
<link href='http://fonts.googleapis.com/css?family=Roboto' rel='stylesheet' type='text/css'>
<!-- Twitter Bootstrap -->
<link href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css" rel="stylesheet">
<!-- custom stylesheet -->
<link rel="stylesheet" href="app/css/search.css" type="text/css">
</head>
<body ng-controller="queryController as query">
<form class="form-search">
<input type="text" class="input-medium search-query" placeholder="Looking for something?" ng-model="input" ng-change="query.inputChange()">
</form>
<h1>{{input}}</h1>
<!-- jQuery -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<!-- AngularJs -->
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular-resource.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular-route.min.js"></script>
<!-- Bootstrap -->
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js"></script>
<!-- Search App -->
<script src="app/app.js"></script>
</body>
</html>
有趣的是,如果我将请求的URL更改为AngularJS JSONP教程(https://docs.angularjs.org/api/ng/service/ $ http#jsonp)上的那个,它可以正常工作!我可以简单地获取数据。话虽如此,我再说一遍:我试图获取IS的JSON有效。
任何帮助将不胜感激。谢谢!