将数据从Angular js发送到使用express的节点js restful服务的最佳方法是什么。我的Angular js代码如下: -
var myController = function("myController", $scope) {
$http.get("/someUrl", {key1:"value1", key2: "value2"}).then(function(response) { alert(response.data);});
在节点js端: -
app.get("/someUrl", function(req, res) {console.log(req.body);});
我可以看到console.log正在显示{}。有没有办法发送json输入为get。
顺便说一下,我使用了快速模块的Nodejs,我使用了body-parser并设置了所需的所有其他东西。
我正在使用Angularjs 1.4和Nodejs表达4。
答案 0 :(得分:1)
您可以同时使用$resource
和$http
。使用$resource
,您可以利用REST API的一致性,因为它将使用熟悉的结构来构建端点,因此有一点魔力。
使用$resource
:
var Dog = $resource('/dogs/:dogId', { dogId :'@id' });
var fido = new Dog({ name: "Fido" });
fido.$save();
// POST to /dogs/ with data: { name: "Fido" }
$http
您更明确。您可以发送如下数据:
$http({
method: "get",
url: "...",
params: {
key1: "value1",
key2: "value2"
}
});
就像这样:
$http({
method: "post",
url: "...",
data: {
key1: "value1",
key2: "value2"
}
});
答案 1 :(得分:1)
现在在您的节点服务器中
app.get("/someUrl", function(req, res) {console.log(req.body);});
试试这个
app.get("/someUrl", function(req, res) {console.log(req.body.key1);});