Ajax传递数据中有特殊字符怎么处理

来源:爱站网时间:2022-11-11编辑:网友分享
本文来给大家说说Ajax传递数据中有特殊字符怎么处理的内容,小编觉得还不错,特地整理了一下才来分享给你们,相信你们看完这篇文章内容后,对Ajax的了解更进一步了。

问题描述

如下,对含有特殊字符的text进行JSON封装,通过Ajax传递,

var data = {"Id": id, "text": text};

在后台无法进行数据接收。

解决方案

req.setRequestHeader("Content-Type",
        "application/x-www-form-urlencoded");

换为:

req.setRequestHeader("Content-type",
        "application/json; charset=utf-8");

后台接受数据:

 //进行json数据的接收
    StringBuilder sb = new StringBuilder();
    BufferedReader br = request.getReader();
    char[] buff = new char[10000];
    int len;
    while((len = br.read(buff)) != -1){
      sb.append(buff, 0, len);
    }
    String mess = sb.toString();
    //将字符串转换为JSON对象
    JSONObject jsonObject=new JSONObject(mess);
    //获取其中的值
    jsonObject.getInt("Id");
    //含有特殊字符的文本需要先进行转码
    URLDecoder.decode(jsonObject.getString("text"), "UTF-8"));

这样就可以正确的进行文本的接收啦~

如果你对“Ajax传递数据中有特殊字符怎么处理”文章有异议,可以来本站留言或者咨询小编,我们网站所提供的内容都是不错的,对一些新手朋友来说非常的实用。

上一篇:AJAX进行跨域请求如何做

下一篇:ajax三级联动的具体操作代码

您可能感兴趣的文章

相关阅读

热门软件源码

最新软件源码下载