我为rest api创建了main.js。当我从vericek.js向本地服务器发送请求时,响应没有返回,但本地服务器在终端中显示正在发送数据。 问题是什么。 谢谢
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 ..");
});
用户.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(data)
请参阅此处 similar question
关于angularjs - 如何从本地主机中的node.js Restful api 使用我的 angular.js 文件获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38328464/