0

嗨,我在 node.js 中使用 rails 和 socket.io
我想要做的是使用 Net::HTTP.post_form 在 rails 模型中发送一个参数,
并在 node.js 文件中获取参数,即 server.js

模型发送.rb

def self.push(userid)
   url = "http://socket.mydomain.com/push"
   res = Net::HTTP.post_form(URI.parse(URI.encode(url)),data)
end

服务器.js

app.post('/push', function (req, res) {
  console.log(req.param.userid)
});

请求变量

req.ip =127.0.0.1
req.protocol= http
req.path = /push
req.host = socket.mydomain.com
req.param

我打印了所有的值,但参数总是空的,有什么解决方案吗?提前致谢!:D

4

1 回答 1

0

在 Express 中,如果您发出 use app.use(express.bodyParser()); ,您可以通过 req.body.searchText 检索 HTML 表单中发布的值(HTTP POST)。请注意,HTML 表单值来自 req.body,而不是 req.params。

话虽如此,当您使用 Socket.io 而不是 HTML 表单上的“普通”HTTP POST 时,我不确定这些值是如何提交给服务器的。

I realize this is not an exact answer to your question, but wanted to mention how "normal" HTML form values are handled in case it helps and this was way to long to include as a comment.

于 2013-01-18T15:09:11.577 回答