场景:前台一个简单的form 登陆页 提交姓名,汉字。用firebug观察post请求如下:
参数application/x-www-form-urlencoded
age 
name    王
源代码
name=%E7%8E%8B&age=
可见浏览器对汉字进行了UTF-8的URL编码。 后台nodejs服务器 代码:
 function queryName(response, request){
    var postData = "";
    request.setEncoding('utf8');
    request.addListener("data", function(postDataChunk){
        postData += postDataChunk;
        console.log("Received POST data chunk '"+postDataChunk+"'.");
    });
    request.addListener("end", function(){
        console.log("完成:"+params.name);
    });
}
request.setEncoding(‘utf8’);后依然是, name=%E7%8E%8B&age= 求真相。
      6 回复
    
    
<html>  
<head>  
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />  
</head>  
<body>  
    <form action="/queryName" method="post">  
        用户名:<input type="text" name="name"> </br> 
        年龄:<input type="text" name="age"></br>  
        <input type="submit" value="登录">  
    </form>  
</body></html>
仅仅是个表单提交啊,如何用得encodeURIComponent呢
 
       
    