我正在使用AngularJS以及Python&Django和Django restapi。有一个由restapi创建的JSON文件,我需要使用Angular将数据发送到其中$http.post(). 在
我想知道这是否可能。在
我主要收到了403(禁止)和400(错误请求)的post错误。。在
$http({
method: 'POST',
url: '<JSON FILE URL>',
data: $scope.tmpdataset,
headers: {'Content-Type': 'application/x-www-form-urlencoded'}
}});
这是我的.post()方法。其中im从angular格式的表单中获取数据并将其存储在“tmpDataSet”中。它被正确地创建并且我能够存储到数组中。我只是无法将其写入JSON文件。在
我的JSON文件的结构是
^{pr2}$如果需要更多的代码细节,请评论。在
这个问题可以通过向angular app添加CSRF令牌并使用正则的
$http.post()
函数和所有参数来解决。在而且
^{pr2}$这是怎么回事$scope.tmpDataSet看起来像?因为您已经为url encoded指定了一个内容类型
这表明后端接收到的数据不正确,因为您可能正在传递js对象/数组作为请求的主体。这可以解释你收到的400个错误请求。在
Url编码数据的格式应为
^{pr2}$其中+代表空白。在
如果使用jQuery,可以尝试使用$.param()将Java对象转换为url编码的字符串
前
否则试试这个答案
https://stackoverflow.com/a/24964658/3371851
这句话有点奇怪:
如果要将数据发布到Django,则需要为该视图定义一个视图和URL路由。比如:
请注意,您必须将数据发布到视图中,如果您的文件系统中有一个简单的JSON文件,则不能通过向其发布JSON来添加数据。在
相关问题 更多 >
编程相关推荐