第三方网页如何向nodejs服务器发送http消息或是post消息?

aoaola 发布于 2014/04/15 14:03
阅读 888
收藏 0
如题!
加载中
0
xuchengzone
xuchengzone

为什么我测试可以呀!  是不是位置问题?
app.use(express.json());
app.use(express.bodyParser());
app.use(express.urlencoded());

===========

Express server listening on port 3000
HERE!!!!!
{ groupName: 'new1', groupType: '1' }
groupName:new1
groupType:1

0
降龙罗汉
降龙罗汉

网页发这个不行吧,必须同一个域名和端口哦

0
a
aoaola

引用来自“卜祥龙”的评论

网页发这个不行吧,必须同一个域名和端口哦

第三方网页的代码是:
<form action="http:localhost:3000/post" method="post">
<input type='text' name='groupName' value='new1'/>
<input type='text' name='groupType' value='1'/>
<input type='submit' value='go'/>
</form>
nodejs服务端接收代码:
app.post('/post',function(req, res){
console.log('HERE!!!!!');
console.log(req.body);
console.log('groupName:'+req.body.groupName);
console.log('groupType:'+req.body.groupType);
});
问题是:命令好输出了”here!!!“,但显示req.body是undefine,这是什么原因?

0
90后爱国
90后爱国

应该是它的数据栈没有req.body这项,只有req.body.groupName 和req.body.groupType两项

req.body引用时访问不到就显示undefine

0
a
aoaola
req.body.groupName 和 req.body.groupType一样也是undefine
0
itwarcraft
itwarcraft

可以采用JSONP吧,进行跨域的访问。可以参考JQUERY中jsonp的使用。通过Jsonp进行get post提交数据

0
0x0001
0x0001

用的express吗?需要使用中间件app.use(express.bodyParser());  才会解析body

0
a
aoaola

引用来自“0x0001”的评论

用的express吗?需要使用中间件app.use(express.bodyParser());  才会解析body

已经使用了bodyparse中间件,get请求的数据能接收到,但是post的接收不到

0
a
aoaola

引用来自“xuchengzone”的评论

为什么我测试可以呀!  是不是位置问题?
app.use(express.json());
app.use(express.bodyParser());
app.use(express.urlencoded());

===========

Express server listening on port 3000
HERE!!!!!
{ groupName: 'new1', groupType: '1' }
groupName:new1
groupType:1

果然是位置问题!谢!

返回顶部
顶部