使用JSON的AngularJs $ http.post请求

时间:2015-11-21 06:22:04

标签: javascript json angularjs

我想使用JSON文件创建一个帖子请求。它适用于$ http.get请求但不适用于$ http.post。我获取请求的方法是 -

$http.get('data/data1.json').success(function(res){
    $scope.myDataSet = res;     
})

&安培;它返回我保存在Json文件中的所有JSON数据。 现在我想创建一个保存此Json文件中的数据的post请求,我用于此的方法 -

var obj = {
            Id: $scope.id,
            Name: $scope.name
        }

        $http({
            url: 'data/data1.json',
            dataType: 'json',
            method: 'POST',
            data: obj,
            headers: {
                "Content-Type": "application/json"
            }
        }).success(function(response){
            $scope.myDataSet = response;
        }).error(function(error){
            $scope.error = error;
        });

&安培;错误显示在浏览器中 - POST http://localhost:3000/data/data1.json 404(未找到)。

Remote Address:[::1]:3000
Request URL:http://localhost:3000/data/data1.json
Request Method:POST
Status Code:404 Not Found
Response Headers
view source
Connection:keep-alive
Content-Length:29
Content-Type:text/html; charset=utf-8
Date:Sat, 21 Nov 2015 06:10:47 GMT
X-Content-Type-Options:nosniff
X-Powered-By:Express
Request Headers
view source
Accept:application/json, text/plain, */*
Accept-Encoding:gzip, deflate
Accept-Language:en-US,en;q=0.8
Connection:keep-alive
Content-Length:13
Content-Type:application/json
Cookie:connect.sid=s%3ALlxaAOKSIGfyAfJIkxrRqDp2yDR4mqmd.%2BY9r%2FcOUStykG4ut5yvleAK6PHZ5KqvHCOjUUY%2BmS%2Fs; _ga=GA1.1.242893980.1444535433
DNT:1
Host:localhost:3000
Origin:http://localhost:3000
Referer:http://localhost:3000/
User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36

如何在这个Json文件中保存对象数据..请帮助我。

1 个答案:

答案 0 :(得分:1)

如果您没有使用服务器并直接调用.json文件,那么它应该只作为GET方法调用。 默认情况下使用HTTP GET方法检索所有文件。

由于它是纯JSON文件,并且不通过服务器或任何服务器端代码提供服务,因此除了GET之外,它将无法处理其他HTTP方法,如POST,DELETE等。

更新 -

在您的评论中,您提到要将此帖子数据保存到.json文件中。如果这是您的意图,那么使用$ HTTP无法完成,您需要在服务器端处理此问题。