返回顶部
首页 > 资讯 > 后端开发 > JAVA >Base64:含中文参数转码,对方接受参数解码后,中文信息乱码的解决方案
  • 375
分享到

Base64:含中文参数转码,对方接受参数解码后,中文信息乱码的解决方案

javaspringboot 2023-08-17 19:08:50 375人浏览 薄情痞子
摘要

Base64:含中文参数转码,对方接受参数解码后,中文信息乱码的解决方案 前言一、Base64是什么?二、问题解决总结 前言 在用Postman调接口给对方发参数的时候,对方反应含中文参数的字段信息部分乱码(即中文乱码,数字等

Base64:含中文参数转码,对方接受参数解码后,中文信息乱码的解决方案


前言

在用Postman调接口给对方发参数的时候,对方反应含中文参数的字段信息部分乱码(即中文乱码,数字等正常)。本文介绍了如何解决这个问题。


一、Base64是什么?

以下部分内容来自:

Base64用法参考jdk1.8——Base64

Base64内容介绍浅谈Base64编码规则
Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,在了解Base64编码之前,先了解几个基本概念:位、字节。

位:"位(bit)"是计算机中最小的数据单位。每一位的状态只能是0或1;

字节:8个二进制位构成1个"字节(Byte)",字节是存储空间的基本计量单位。1个字节可以储存1个英文字母,2个字节可以存储1个汉字;

因为有些网络传送渠道并不支持所有的字节,例如传统的邮件只支持可见字符的传送,像ASCII码的控制字符就不能通过邮件传送。这样就受到了很大的限制,比如图片二进制流的每个字节不可能全部是可见字符,所以就传送不了。最好的方法就是在不改变传统协议的情况下,开辟一种新的方案来支持二进制文件的传送。把不可见字符用可见字符来表示。而Base64就是一种基于64个可见字符来表示二进制数据的表示方法。

扩展:不可见字符其实并不是不显示,只是这些字符在屏幕上显示不出来,比如:换行符、回车、退格…字符。

二、问题解决

中文乱码的根本问题还是在于编码规则不同,同一信息通过不同编码规则转换时就可能会出现乱码。尤其是中文,乱码的可能性比英文和数字大的多。

Base64在转码的时候,是对字节数组(byte [])进行转码,常见方法如图所示
Alt

而我们在SpringBoot中,传参设置流程一般如下:
(1)先创建model对象,利用set() 方法填写相关信息
(2)再用JSON.toJSONString() 方法将model 对象转为String 类型
(3)最后利用String.getBytes() 方法转成字节数组,再传入Base64加密方法中

在这里,为了解决中文乱码问题,我在转成字节数组的时候设置编码规则为UTF-8,而不是默认编码规则,即可解决。

具体代码如下:

String params=JSON.tojsONString(model);String sendContent=Base64Util.encode(params.getBytes("UTF-8"));

当然,这里是强制转换为UTF-8编码,具体编码规则可以按照自己的需求设定。


总结

本文介绍了如何在Base64转码前,在生成字节数组的时候进行编码规则的设定,以解决乱码问题。
希望对大家有用!

来源地址:https://blog.csdn.net/qq_46119575/article/details/128616783

--结束END--

本文标题: Base64:含中文参数转码,对方接受参数解码后,中文信息乱码的解决方案

本文链接: https://lsjlt.com/news/373234.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Base64:含中文参数转码,对方接受参数解码后,中文信息乱码的解决方案
    Base64:含中文参数转码,对方接受参数解码后,中文信息乱码的解决方案 前言一、Base64是什么?二、问题解决总结 前言 在用Postman调接口给对方发参数的时候,对方反应含中文参数的字段信息部分乱码(即中文乱码,数字等...
    99+
    2023-08-17
    java spring boot
  • springboot参数传中文乱码的解决方案
    目录前言业务部门的实现思路方案一:方案二:编写字符编码过滤器方案三:在application.yml指定编码格式为utf-8方案四:写个StringHttpMessageConver...
    99+
    2024-04-02
  • URL中文参数乱码问题的PHP解决方案
    URL参数乱码问题一直是开发者面临的一个棘手问题,尤其是在处理中文参数时更为显著。在PHP编程中,如果URL中的中文参数出现乱码,不仅会影响用户体验,还可能导致程序出现异常行为。本文将...
    99+
    2024-04-02
  • Ajax传递中文参数到后台乱码的解决方法
    这篇文章主要讲解了“Ajax传递中文参数到后台乱码的解决方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Ajax传递中文参数到后台乱码的解决方法”吧! ...
    99+
    2024-04-02
  • java中文参数乱码怎么解决?
    java中文参数乱码的解决方法【方法一】后端接收参数时转码String fileName = new String (fileName.getBytes("ISO8859-1"),"utf-8");【方法二】修改tomcat安装目录下的se...
    99+
    2017-11-06
    java入门 java
  • php url参数中文乱码如何解决
    这篇“php url参数中文乱码如何解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“php url参数中文乱码如何解决”文...
    99+
    2023-07-04
  • 解决PHP中URL中文参数乱码的技巧
    解决PHP中URL中文参数乱码的技巧 随着互联网的发展,中文网站越来越普及,用户也希望能够通过中文参数来访问网站。然而,在PHP开发中,处理URL中文参数时常常会出现乱码问题,给开发者...
    99+
    2024-04-02
  • SpringMVC 中文乱码的解决方案
    目录背景解决方案使用自己写的过滤器使用SpringMVC提供的过滤器如果上面两种方法还实现不了,在试试以下这个方法,大神编写的背景 举个例子,出现中文乱码的例子:提交表单的时候。 表...
    99+
    2024-04-02
  • MySQL数据库中的中文乱码解决方案。
    数据库中输入中文容易出现乱码?(乱码问题本源:参见https://blog.51cto.com/12042068/2115021)解决方法:1.在建表建库的时候就指定默认编码  utf8.&nbs...
    99+
    2024-04-02
  • php中echo get参数乱码的解决方法
    这篇文章给大家分享的是有关php中echo get参数乱码的解决方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。php echo get参数乱码的解决办法:1、使用“iconv("gb231...
    99+
    2023-06-21
  • js解决url传递中文参数乱码问题的方法详解
    目录场景复现:bug解决思路:url传参中文乱码的解决方法1、escape 和 unescape2、encodeURI 和 decodeURI3、encodeURIComponent...
    99+
    2023-05-19
    js中url中文乱码 js url传参中文乱码 js url 中文乱码
  • php url参数中文乱码的原因和解决方法【总结】
    PHP是一种广泛使用的开发语言,可以用来创建Web应用程序和动态网页。但是,使用PHP时会遇到各种问题,其中一个最棘手的问题是URL中的中文参数乱码问题。在本篇文章中,我们将探讨该问题的根本原因以及如何解决它。URL中文参数乱码问题的原因在...
    99+
    2023-05-14
    php
  • PHP处理URL中文参数乱码的方法
    PHP处理URL中文参数乱码的方法 在使用PHP开发网站时,经常会遇到URL参数中含有中文字符的情况。然而,由于URL的编码规则限制,这些中文字符有可能会出现乱码问题。本文将介绍在PH...
    99+
    2024-04-02
  • php url 参数中文乱码问题怎么解决
    本教程操作环境:windows7系统、PHP8.1版、Dell G3电脑。php url 参数中文乱码问题怎么解决?PHP解决URL中文GBK乱码问题的两种方法一般情况下对URL进行UrlEncode 处理 , urlencode(),ur...
    99+
    2024-04-02
  • php url中文参数乱码问题如何解决
    这篇文章主要讲解了“php url中文参数乱码问题如何解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php url中文参数乱码问题如何解决”吧!乱码问题的原因在 PHP 中处理中文参数时...
    99+
    2023-07-05
  • PHP如何解决URL中文参数乱码问题?
    PHP如何解决URL中文参数乱码问题? 在开发过程中,我们经常会遇到需要通过URL传递中文参数的情况。但是在传递中文参数时,很容易出现乱码问题,导致参数无法正确解析。这时候,我们就需要...
    99+
    2024-04-02
  • 解决php转json后的中文乱码
    问题:在php中读取数据库的数据,可以用var_dump  /  print_r  正确读出中文数据,但是转了json格式后,中文数据就变成乱码了类似于 "\u5c0f\u660e"; 解决方法:在json_encode()方法中添加多一...
    99+
    2023-09-04
    php
  • php url参数中文乱码的原因和解决方法是什么
    这篇文章主要介绍“php url参数中文乱码的原因和解决方法是什么”,在日常操作中,相信很多人在php url参数中文乱码的原因和解决方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php url参数...
    99+
    2023-07-05
  • 解决js传中文参数到java后台出现乱码问题
    在js中传中文到java后端时,参数中有中文时,后端获取到的值是乱码。解决方法如下:先在js中传值时把参数编码,然后再传值到后端var userName=encodeURI(userName);在后端获取该值后,再用进行解码userName...
    99+
    2017-10-25
    java基础 解决 java 中文参数 问题 js
  • MySQL中文乱码问题解决方案
    linux 中 MySQL 出现中文乱码问题如下操作 编辑vi /etc/my.cnf 文件,添加图中标记三行 [client] default-character-set=utf8 [mysqld] chara...
    99+
    2022-05-17
    MySQL 中文乱码
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作