首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将数据从角度发送到Express

将数据从角度发送到Express
EN

Stack Overflow用户
提问于 2015-08-03 12:47:55
回答 2查看 64关注 0票数 2

我不明白为什么我无法获得我在Angular.js快递中发布的表单数据。

角部分:

代码语言:javascript
运行
复制
$http.post(baseURL+"/search", data).success(function(data, status) {
        $scope.results = data;
    });

明示部分:

代码语言:javascript
运行
复制
app.use(bodyParser.urlencoded({ extended: false })); 
app.post('/search', function(req, res){
    console.log(req.query, req.body, req.params);
});

日志为{}。我不知道我做错了什么。

我也试过:

代码语言:javascript
运行
复制
$http({
    method: "POST",
    url : baseURL+"/search",
    data : {name: 'tete'},
    headers: {'Content-Type': 'application/json'}
}).success( function(data){
    console.log(data);
});

它也不管用。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-08-03 12:56:45

默认情况下,角以JSON的形式发送数据。

代码语言:javascript
运行
复制
$httpProvider.defaults.headers.post //Content-Type: application/json

您只包含urlencoded体解析器中间件。您需要包括bodyParser.json()

代码语言:javascript
运行
复制
app.use(bodyParser.json()); 
app.post('/search', function(req, res){
    console.log(req.body);
});
票数 4
EN

Stack Overflow用户

发布于 2015-08-03 13:01:24

看起来,角$http服务以JSON的形式发送数据,而您缺少了适当的bodyParser。

在快车投递路线之前,试着用app.use(bodyParser.json());代替你的app.use(bodyParser.json());

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31787724

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档