gpt4 book ai didi

android - RestTemplate 使用 setContentType(MediaType.MULTIPART_FORM_DATA) 发布 UTF-8 数据

转载 作者:行者123 更新时间:2023-11-30 03:46:30 24 4
gpt4 key购买 nike

我正在为 android 使用 spring。我想在我的 android 应用程序中创建注册表单。用户可能会用 utf-8 格式填写表格,但是当数据发送到服务器并存储在 MySQL 数据库中时,我发现 ??????在我的数据库中 field.table 的列类型设置为 utf8_general_ci。我的问题是:我是否需要在 php 页面中为内容类型设置一些东西,或者我需要在我的 android 代码中设置 UTF-8?我应该为他们两个做什么?这是我正在使用的代码:我做的和here一样

File cacheDirectory = context.getFilesDir();
tmpFile = new File(cacheDirectory.getPath() + "/" + "avatar.png");
Resource file = new FileSystemResource(tmpFile);

MultiValueMap<String, Object> formData = new LinkedMultiValueMap<String, Object>();
formData.add("firstName", registerFields[0]);
formData.add("lastName", registerFields[1]);
formData.add("userName", registerFields[2]);
formData.add("file", file);

HttpHeaders requestHeaders = new HttpHeaders();
requestHeaders.setContentType(MediaType.MULTIPART_ FORM_DATA);
HttpEntity<MultiValueMap<String, Object>> requestEntity = new HttpEntity<MultiValueMap<String, Object>>(formData, requestHeaders);


RestTemplate restTemplate = new RestTemplate(true);

restTemplate.getMessageConverters().add(
new GsonHttpMessageConverter());
restTemplate.getMessageConverters().add(
new StringHttpMessageConverter());
ResponseEntity<Success[]> response = restTemplate.exchange(url, HttpMethod.POST, requestEntity,Success[].class);
return response.getBody();

编辑:解决了 UTF-8 问题 我刚刚将这一行添加到我的 config.php 文件中,问题就解决了

mysql_query("SET character_set_results=utf8 , character_set_client=utf8 , character_set_connection=utf8 , character_set_database=utf8 , character_set_server=utf8",$con);

编辑:没有解决问题

最佳答案

在这里调试将是你的 friend 。需要注意的一些事项:

  1. 检查您用于查看数据的任何内容是否存在问题。 MySQL存储吗?????还是您的应用只是向您展示 ????
  2. 检查您与 MySQL 连接的内容格式,这可能是罪魁祸首。 (您可以通过简单地编写一个应用程序将数据推送到您的数据库而无需通过网络来测试这一点)
  3. 检查您的网络应用程序是否正在处理 UTF-8 格式的读取。例如,在旧版本的 JBoss 中,我使用嵌入式 apache 容器从连接中读取字符串,这些字符串采用服务器运行的机器的默认字符集(不是 utf-8)

关于android - RestTemplate 使用 setContentType(MediaType.MULTIPART_FORM_DATA) 发布 UTF-8 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14911399/

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