angular.module('myApp', ['ngRoute', 'myApp.controllers'])
.config(function ($routeProvider, $httpProvider) {
$routeProvider
.when('/', {
templateUrl: 'app/views/myApp.html',
controller: 'appController'
})
.otherwise({
redirectTo: '/'
});
});
angular.module('myApp.controllers', [])
.controller('appController', function($scope, $http) {
$scope.oneCharacter = function() {
$http({
method:'GET',
url:'http://localhost:3000/#/api/info'
}).then(function(response) {
console.log('-------------------------', response);
}) .catch(function(err) {
console.log(err);
});
}
});
<div ng-controller="appController">
<input type="button" value="button" ng-click="oneCharacter()"/>
</div>
<!DOCTYPE html>
<html ng-app='myApp'>
<head>
<meta charset="utf-8" />
<title>Hello</title>
</head>
<body>
<div ng-view></div>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular-route.js"></script>
<script src="app/controllers/myApp.js"></script>
<script src="app/app.js"></script>
</body>
</html>
您好,
我正在向我构建的http://localhost:3000/#/api/info
服务器发送get请求。我期待一个json
对象充满了人们的信息。但是,每次单击button
(控制器)中的appController
时,请求都不会指定url
。每次我收到我在下面复制的index.html
内容。但是,我使用postman
测试了我的服务器,并返回正确的信息。有谁知道为什么会这样?
感谢
答案 0 :(得分:0)
您提供给$http
的网址是
url:'http://localhost:3000/#/api/info'
#
意味着那些只是哈希(又名:锚点),这是Angular用来做内部路由的。因此,您要求的只是/
,这是您的index.html
页面。
假设您有一个托管API的本地服务器,则需要删除#
。
url: 'http://localhost:3000/api/info'