【问题标题】:AngularJs $http.post request using JSONAngularJs $http.post 请求使用 JSON
【发布时间】:2016-02-23 18:00:48
【问题描述】:

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

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

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

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 (Not Found)。

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 文件中..请帮助我。

【问题讨论】:

  • 好吧..您的服务器不接受对该网址的 POST 请求。这可能是 express 路由的问题。
  • 我没有使用任何后端服务器,手动控制一个json文件。保存了数据,保存数据后,我想将此数据保存在此文件中。而已!这可能吗,我不确定。我的 Json 数据 - [ {"Id": "1", "Name": "Afroza"}, {"Id": "2", "Name": "Yasmin"} ]

标签: javascript json angularjs


【解决方案1】:

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

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

更新 -

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

【讨论】:

    猜你喜欢
    • 2014-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-16
    • 2017-04-30
    • 2012-08-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多