大家进来看看帮帮忙~~~~
/** 主函数*/
function main(a_route,a_handle) {
function onRequest(a_req, a_res) {
a_res.writeHead(200, {'Content-Type': 'text/plain'});
a_req.setEncoding('utf8');
var t_str=urllib.parse(a_req.url,true).query.json;//接收字符串
/********************/
console.log("1url:\n"+a_req.url);
console.log("data:\n"+t_str);
/********************/
var t_obj=JSON.parse(t_str);//将字符串转换成json
a_route(a_handle,t_obj.interfaceid,t_obj,a_res);
a_res.end();
}
http.createServer(onRequest).listen(port);
}
写了以上的代码,用浏览器访问http://192.168.0.152:8888/?json={“interfaceid”:“0x1001”,“mac”:“cat”,“gameid”:“23”} 是可以正确解析和使用的, 用C++的编写了一个client端进行访问的时候以上代码报错,经过打印发现时URL为空,找了好久找不是哪里写的问题,client可以跟定是发送了东西的。请高手指点下
6 回复
浏览器访问时会对url进行urlencode,你用chrome浏览器。看network,看看实际请求的样子。
开发者工具里面的network tab页
不太明白~
比较好奇。我觉得 c++服务端+js客户端的情况比js服务端+c++客户端的情况多很多。你的技术选型是咋样的?