如何从本地主机中的node.js restful api获取angular.js文件的数据

我为rest api创build了main.js。当我从vericek.js发送请求到本地服务器时,响应没有回来,但localserver显示在terminal发送数据。 问题是什么。 谢谢

的index.html

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width"> <title></title> <link href="lib/ionic/css/ionic.css" rel="stylesheet"> <link href="css/style.css" rel="stylesheet"> <!-- IF using Sass (run gulp sass first), then uncomment below and remove the CSS includes above <link href="css/ionic.app.css" rel="stylesheet"> --> <!-- ionic/angularjs js --> <script src="lib/ionic/js/ionic.bundle.js"></script> <!-- cordova script (this will be a 404 during development) --> <script src="cordova.js"></script> <!-- your app's js --> <script src="js/vericek.js"></script> </head> <body> <div ng-app="app" ng-controller="ctrl"> <button ng-click="getData()">Get Data</button> <ul> <li ng-repeat="d in data">{{d.id}}</li> </ul> </div> </body> </html> 

vericek.js

 var app=angular.module("app",[]); app.controller("ctrl",function($scope, $http) { $scope.getData=function() { $http.get("http://127.0.0.1:1305/listuser").success(function(response){ $scope.veriler=response.userInfo; }); } }); 

main.js / rest api

 var express=require("express"); var app=express(); var host="127.0.0.1"; var port="1305"; var fs=require("fs"); app.get("/listuser",function(request,response){ fs.readFile(__dirname+"/"+"user.json","utf-8",function(error,data){ if(error){ response.writeHead(404,{"Content-Type":"text/plain"}); response.end("Page Not Found"); } else { console.log("sent data:"+data); response.writeHead(200,{"Content-Type":"text/json"}); response.end(data); } }); }); var server=app.listen(port,host,function(){ console.log("Listening port .."); }); 

user.json

 { "userInfo":[ { "id":"1", "username":"ali", "date":"1.1.2016", "post":"this is a post", "like":"2", "liked":false }, { "id":"2", "username":"veli", "date":"2.3.2015", "post":"Everyting nonsense", "like":"0", "liked":false } ] } 

我认为你在main.js中使用了错误的结尾

response.end()只是结束响应过程,它不发送任何数据。

你想使用response.send(数据)

在这里看到一个类似的问题