使用ajax 传递中文字符串时, 服务端会接收不到预期的 中文字符。
此时,需要对 js中的中文字符参数进行 编码, 到达服务端后, 再为其解码 即可。
前端:
var url = '....';
var param = "哈哈";
param = encodeURI(param); // 编码后:%E5%93%88%E5%93%88
$.get(url, {data: param}, function (data) {
console.log(data);
});
后端:
$data = $this->request->param('data');
$data = urldecode($data); // 解码后: "哈哈"