我正在尝试将我的节点服务器设置为接收编码的URL,如下所示:
http://www.domain.com/room=office&light=light2&state=on
然后将其作为POST发送,其工作负载格式为:
{room:'office', light:'light2', state: 'on'}
到目前为止,我已经解析了它以便正确格式化:
var postrelay=S(pathname).replaceAll('/', '{').s;
var postrelay=S(postrelay).replaceAll('=', ':\'').s;
var postrelay=S(postrelay).replaceAll('&', '\',').s;
var postrelay= (postrelay + '\'}') ;
http.post('http://www.postdomain.com/', postrelay);
有人可以告诉我需要改变什么来使这项工作?控制台日志显示我解析的json字符串有效,但它无效。
答案 0 :(得分:0)
您需要在查询字符串的开头添加问号:
http://www.domain.com/?room=office&light=light2&state=on
^
执行此操作后,只需使用url.parse
解析网址并传入生成的对象:
> var parsed = url.parse('http://www.domain.com/?room=office&light=light2&state=on', true);
> parsed.query
{ room: 'office',
light: 'light2',
state: 'on' }