下面的html代码: - ` AngularJS | $ http服务器
<div ng-controller="people">
<ul>
<h2> Names and Ages of progrmmers: </h2>
<li ng-repeat="person in persons">
{{person.Name + ':' + person.Age}}
</li>
</ul>
</div>
以下js文件:
var app=angular.module('mainApp',[]);
app.controller('people',function($scope,$http){
$http({
method: 'POST',
url: 'http://localhost/AngularJS/post.json',
data:{"Name": "1234", "Age":"13","Fav_Color":"black"},
headers:{'records':'json'}
})
.success(function(response){
$scope.persons=response.records;
});
});
我需要将数据保存在文件名“post.json”中。但它没有用。所以任何人都可以告诉我的代码有什么问题。
答案 0 :(得分:0)
制作一个将数据保存到数据库中的php文件
将此文件放入您的php文件中,并更新列名并添加查询,然后使用您在上面编写的ajax请求调用此文件
<?php
// get all the values from the request
$name = $_POST['Name'];
$age = $_POST['Age'];
$favcolor = $_POST['Fav_Color'];
if(!$name || empty($name))
{
echo "name is required";
}
if(!$age || empty($age))
{
echo "age is required";
}
if(!$favcolor || empty($favcolor))
{
echo "favorite color is required";
}
// change according to column names on the left side
$item = array(
"name" => $name,
"age" => $age,
"favcolor" => favcolor
);
// save in mongo db - ref link : http://php.net/manual/en/mongo.queries.php
echo "success";
?>
答案 1 :(得分:0)
您无法使用javascript写入文件,这将带来安全风险。要使POST调用工作,您需要一种服务和服务方法来获取数据并将其保存到文件中。您可以使用PHP,C#或JS语言编写服务。
查看本教程,使用NodeJS创建一个restful api(因为您已经在使用javascript):https://www.thepolyglotdeveloper.com/2015/10/create-a-simple-restful-api-with-node-js/
查看其他教程,了解如何使用NodeJS将数据保存到文件:https://docs.nodejitsu.com/articles/file-system/how-to-write-files-in-nodejs/
stackoverflow中的这个答案向您展示了如何创建服务以及如何将数据保存到文件(使用NodeJS和ExpressJS):Using POST data to write to local file with node.js and express
**您希望在不在控制器中的角度服务中进行$ http调用。
创建服务后,请更改您的代码(我正在使用restful api):
var app=angular.module('mainApp',[]);
app.controller('people',function($scope,$http){
$http({
method: 'POST',
url: 'http://localhost/api/user',
data:{"Name": "1234", "Age":"13","Fav_Color":"black"}
})
.success(function(response){
$scope.persons=response.records;
});
});