gpt4 book ai didi

java - AJAX调用Java字符编码

转载 作者:行者123 更新时间:2023-12-01 04:11:28 25 4
gpt4 key购买 nike

我目前有 2 个不同的 jsp 页面,它们都调用 java 应用程序。目前,只有其中之一的字符编码效果良好。

页面 A 的作用是:

$.ajax({
url: _root + myPage,
data: myData,
success: mySuccessHandler,
error: myErrorHandler});

页面 B 的作用是:

$.post(_root + page, data, successHandler).error(errorHandler);

在我使用这段代码的java应用程序中,有2个独立的函数,但唯一的区别是参数名称A使用“answerdata”而B使用“data”:

request.setCharacterEncoding("UTF-8");
JSONObject data = new JSONObject(URLDecoder.decode(request.getParameter("answerdata"), "UTF-8"));

两个 jsp 页面都将数据封装在表单内:

<form id="answerdata" accept-charset="UTF-8" onsubmit="return false;">

两者也都有这个:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>

只有页面 A 不起作用,但删除它没有任何效果:

<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>

我浏览过 stackoverflow 上的一些页面,但到目前为止,唯一对我的页面有效的答案是

request.setCharacterEncoding("UTF-8")

但这仅适用于页面 B

最佳答案

我能够使用以下方法修复它:

JSONObject data = new JSONObject(new String(request.getParameter("answerdata").getBytes(), "UTF-8"));

关于java - AJAX调用Java字符编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19879956/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com