账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    java后台,ajax提交到后台的数据,后台接受后,为什么在本地是正常的,放到服务器就是乱码?
    48
    0
    @RequestMapping(value = "/getHot", method = RequestMethod.GET,produces = "application/json; charset=utf-8")
        @ResponseBody
        public String getHot(HttpServletRequest request,HttpServletResponse response) throws Exception {
            request.setCharacterEncoding("UTF-8"); // 设置字符集,防止中文乱码
            response.setCharacterEncoding("UTF-8"); // 设置字符集,防止中文乱码
            String cateName=request.getParameter("cateName");

    这个cateName,后台接受到后,在本地测试是正常的,发布在服务器上就成了乱码

    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 10 元积分
        全部回答
    • 0
    • 这个问题可能有多种原因:

      1. Content-Type头设置错误:在服务器端,浏览器会默认发送的数据类型为 application/json。如果在请求头中设置了 Content-Type,例如 application/json,但服务器端没有正确地接收这个类型,那么发送的数据可能会被当作其他类型的数据接收,导致乱码。

      2. 字符编码问题:如果在服务器端的代码中使用了不同的字符编码,那么发送的数据可能会被当作另一个编码的字符进行处理,导致乱码。

      3. Accept-charset头设置错误:在服务器端,浏览器会默认发送的 Accept-charset 头中包含了所有可能的字符集,但服务器端可能没有正确地设置这个头。如果服务器端设置了 Accept-charset,但客户端没有正确地设置,那么发送的数据可能会被当作其他字符集进行处理,导致乱码。

      4. Content-TypeAccept-charsetcharset 的设置不匹配:服务器端和客户端在发送数据时可能使用了不同的 Content-TypeAccept-charset,这会导致数据被当作不同的类型进行处理,导致乱码。

      解决这个问题的方法通常是:

      1. 在服务器端设置正确的 Content-TypeAccept-charset

      2. 在服务器端使用统一的字符编码,确保在所有支持的字符集之间可以正确地转换。

      3. 在客户端设置正确的 Accept-charset,确保在所有支持的字符集之间可以正确地转换。

      4. 在服务器端和客户端都设置正确的 Content-TypeAccept-charset

    • 宠你一世 普通会员 2楼

      这个问题可能有多种原因:

      1. Content-Type头设置错误:在服务器端,浏览器会默认发送的数据类型为 application/json。如果在请求头中设置了 Content-Type,例如 application/json,但服务器端没有正确地接收这个类型,那么发送的数据可能会被当作其他类型的数据接收,导致乱码。

      2. 字符编码问题:如果在服务器端的代码中使用了不同的字符编码,那么发送的数据可能会被当作另一个编码的字符进行处理,导致乱码。

      3. Accept-charset头设置错误:在服务器端,浏览器会默认发送的 Accept-charset 头中包含了所有可能的字符集,但服务器端可能没有正确地设置这个头。如果服务器端设置了 Accept-charset,但客户端没有正确地设置,那么发送的数据可能会被当作其他字符集进行处理,导致乱码。

      4. Content-TypeAccept-charsetcharset 的设置不匹配:服务器端和客户端在发送数据时可能使用了不同的 Content-TypeAccept-charset,这会导致数据被当作不同的类型进行处理,导致乱码。

      解决这个问题的方法通常是:

      1. 在服务器端设置正确的 Content-TypeAccept-charset

      2. 在服务器端使用统一的字符编码,确保在所有支持的字符集之间可以正确地转换。

      3. 在客户端设置正确的 Accept-charset,确保在所有支持的字符集之间可以正确地转换。

      4. 在服务器端和客户端都设置正确的 Content-TypeAccept-charset

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部