OKHTTP 3.12.0 以后版本 headers 中不可携带中文

今天遇到的报错:

java.lang.llegalArgumentException: Unexpected char 0x957f at 0 in x-brand value: 电视堆栈
okhttp3.Headers.checkValue(Headers.java:272)
okhttp3.Headers$Builder.add(Headers.java:312)
okhttp3.Request$Builder.addHeader(Request.iava:196)

查了下源码,才发现 okhttp 在 3.12.0 版本开始,在okhttp3的 Headers 中新增了一组函数:

传入中文开始会无法通过检查而 crash

在 Unicode 字符集中,\u001f\u007f 之间包含了一些特殊字符、标点符号、数字、大写字母、小写字母以及其他常见的 ASCII 字符。这个范围通常是指 ASCII 控制字符和可打印字符。

以下是 \u001f\u007f 之间的一些常见字符:

  • ASCII 控制字符(\u0000\u001f):

    • \u001f: Unit Separator
    • \u001e: Record Separator
    • \u001d: Group Separator
    • 等等
  • 可打印 ASCII 字符(\u0020\u007e):

    • 空格 
    • 数字 0-9
    • 大写字母 A-Z
    • 小写字母 a-z
    • 标点符号 , . ! ? 等等

这个范围包括了 ASCII 字符集中的大部分常用字符,涵盖数字、字母、标点符号以及一些特殊字符。在文本处理和编程中,这些字符通常被认为是可打印字符或者基本的控制字符。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/9523.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux如何查看websocket的连接

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 http://218.75.87.38:9666/ 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码: h…

MySQL数据库——基础事务操作-BEGIN-COMMIT-ROLLBACK

DDL CREATE TABLE student (id int(11) NOT NULL AUTO_INCREMENT COMMENT 学号,createDate datetime DEFAULT NULL,userName varchar(20) DEFAULT NULL,pwd varchar(36) DEFAULT NULL,phone varchar(11) DEFAULT NULL,age tinyint(3) unsigned DEFAULT NULL,sex char(2) DEFAU…

随便写点东西

1 react的高阶组件 1.1 操纵组件的props、对组件的props进行增删; 1.2 复用组件逻辑 服用的组件逻辑,互不影响;比如高阶组件中复用了input框,输入内容是互不影响的; 1.3 可以通过配置装饰器来实现高阶组件&#xff08…

内存卡不小心格式化了怎么办?3个方法解决数据丢失问题!

“很奇怪,我的内存卡不小心中病毒了,刚刚在清理病毒时不小心把内存卡格式化了。我保存了很多重要的数据在里面,还有方法可以恢复这些数据吗?” 在数字设备日益普及的今天,内存卡已成为我们存储和传输数据的重要工具。但…

界面控件开发包DevExpress v23.2.6全新发布|附高速下载

DevExpress拥有.NET开发需要的所有平台控件,包含600多个UI控件、报表平台、DevExpress Dashboard eXpressApp 框架、适用于 Visual Studio的CodeRush等一系列辅助工具。 屡获大奖的软件开发平台DevExpress 近期重要版本v23.2已正式发布,该版本拥有众多新…

笨方法自学python(五)

字符串和文本 在这章习题中我们将使用复杂的字符串来建立一系列的变量,从中你将学到它们的用途。首先我们解释一下字符串是什么 东西。 字符串通常是指你想要展示给别人的、或者是你想要从程序里“导出”的一小段字符。Python 可以通过文本里的双引号 " 或者单…

单片机如何扩展 I/O 接口

单片机可以通过以下几种方式扩展I/O接口: 1. 并行扩展:使用并行接口芯片,例如74HC595、74HC164等,将单片机的少量I/O引脚扩展成多个I/O引脚。这些并行接口芯片具有串行输入和并行输出的功能,通过单片机的少量引脚来控…

linux服务器中通过pm2启动通过koa框架托管的vue项目命令总结

vue项目部署到linux服务器,一般来说,我们可以通过koa框架来托管打包后的vue项目,那么如何何启动,关闭呢: 今天我们来总结一下: 1、安装 PM2:如果你还没有安装 PM2,请使用以下命令进行安装&…

成为一名算法工程师需要掌握哪些技术栈

成为算法工程师需要学习的编程技能主要包括以下几个方面: Python:Python是算法工程师最常使用的编程语言之一。它拥有简洁易读的语法和丰富的库,如NumPy、Pandas、SciPy、Matplotlib等,这些库为数据处理、科学计算和可视化提供了…

【刷题】代码随想录算法训练营第三十五天|435、无重叠区间,763、划分字母区间 ,56、合并区间

目录 435、无重叠区间763、划分字母区间56、合并区间 435、无重叠区间 讲解:https://programmercarl.com/0435.%E6%97%A0%E9%87%8D%E5%8F%A0%E5%8C%BA%E9%97%B4.html 左边界和有边界排序,注意sort的排序规则函数编写。 class Solution { public:// 按照…

C#开发的网络速度计 - 开源研究系列文章 - 个人小作品

上次发布了一个获取网络速度的例子( https://www.cnblogs.com/lzhdim/p/18167854 ),就是为了这次这个例子。用于在托盘里显示网络速度的图标,并且能够显示网络速度。下面就介绍一下这个小应用的源码。 1、 项目目录; 2、 源码介绍&#xff1b…

100个3D模型免费下载

老子云平台📢周5⃣福利日 | 划重点!高质量3D模型资源包免费领🛒✅涵盖全行业资源🆕✅100个高质量3D模型❗✅关注下方公众号即可免费下载 老子云https://www.laozicloud.com/

代码审计-PHP模型开发篇动态调试反序列化变量覆盖TP框架原生POP链

知识点 1、PHP审计-动态调试-变量覆盖 2、PHP审计-动态调试-原生反序列化 3、PHP审计-动态调试-框架反序列化PHP常见漏洞关键字 SQL注入: select insert update delete mysql_query mysqli等 文件上传: $_FILES,type"file"&…

QMetaObject 是 Qt 框架中的一个重要类,用于在运行时处理对象的元对象信息

QMetaObject 是 Qt 框架中的一个重要类,用于在运行时处理对象的元对象信息。每个继承自 QObject 的类在 Qt 中都有一个对应的 QMetaObject,用于存储该类的元对象信息,包括类名、父类、信号和槽等。 以下是 QMetaObject 类的一些主要功能和用…

linux搭建solr,使用java进行索引增删改查

在linux系统上搭建solr,并且使用ik分词,添加数据导入,使用java代码实现增删改查相关功能。 1.solr下载 下载solr的tar包:https://archive.apache.org/dist/lucene/solr,根据所需下载具体的版本呢 下载IK分词jar包&a…

Jupyter配置远程访问的密码

安装 下载Anaconda的.sh文件后,上传到服务器,然后进行安装: chmod x anaconda.sh ./anaconda.sh创建虚拟环境 可以指定Python版本创建虚拟环境: conda create --name langchain python3.11.7 conda activate langchain conda …

【Web前端】JavaScript交互编程

1.与html控件交互 使用document.getElementById(id名)获取控件使用document.getElementById(id名).value 获取控件值使用document.getElementById(id名).value给定值 设置控件值 2.使用js改变css 通过document.getElementById(id值).style.css属性名值 改变css 通过 document.g…

ArcGIS如何计算地级市间的距离

一、数据准备 加载配套实验数据包中的地级市和行政区划矢量数据(订阅专栏后,从私信查收数据),如下图所示: 二、计算距离 1. 计算邻近表 ArcGIS提供了计算点和另外点之间距离的工具:分析工具→邻域分析→生成临近表。 计算一个或多个要素类或图层中的要素间距离和其他邻…

QT 静态单例与对象管理机制导致的指针重复释放问题

这是我在应用中发现的问题,以此记录下。 当我使用Qt创建一个单例dialog时,为了给其设置父对象,我使用了setParent(this)。但由于同时这个单例dialog是个静态对象,使得dialog对象指针被重复释放。 //在waitingdlg.h中 static Wai…

linux下脚本监控mysql主从同步异常时发邮件通知

在MySQL中,同步异常监控通常涉及监控复制的状态。可以通过查询SHOW SLAVE STATUS命令来获取复制的状态信息,并对其进行监控。以下是一个简单的SQL脚本,用于监控MySQL复制状态并输出异常信息: 查mysql slave状态 SHOW SLAVE STAT…