有关于【该文件的字符编码需要在传输协议层声明,或者在文件中加入一个 BOM(字节顺序标记)】的另一种解决办法

简介: 有关于【该文件的字符编码需要在传输协议层声明,或者在文件中加入一个 BOM(字节顺序标记)】的另一种解决办法

昨天测试一个接口的时候发现一个异常,浏览器访问一个controller,然后带了一个JSON格式的参数,然后浏览器返回400错误,调试发现下面的错误信息:

纯文本文件的字符编码未声明。如果该文件包含 US-ASCII 范围之外的字符,该文件将在某些浏览器配置中呈现为乱码。该文件的字符编码需要在传输协议层声明,或者在文件中加入一个 BOM(字节顺序标记)。

很纳闷,这个服务的部署环境是window10系统,之前在centos7测试是没有这样的问题。

搜索发现都是说在访问页面的开头加上下面的语句:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Stict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang = "zh-CN">



并在<head>下面加上下面的语句:

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

但实际上我是直接通过浏览器访问,无法添加任何有关字符编码等申明的。后来有同事提醒说在使用GET传输JSON格式的‘{}’【大括号】应该会被浏览器拦截,需要转义。恍然大悟,于是把 {} 去除完全可以访问,问题定位了。

最后的解决办法是把 {} 转义成 %7B%7D 即解决上述问题。



相关文章
C4.
|
8月前
|
算法 程序员 C++
C++标准头文件结构
C++标准头文件结构
C4.
109 0
|
4月前
|
API
MASM32编程使用PE文件头信息计算文件长度
MASM32编程使用PE文件头信息计算文件长度
|
8月前
|
JavaScript C#
C# bom头清理
C# bom头清理
69 0
读取文件结束的判定的概念,使用方法和文件缓冲区的位置
读取文件结束的判定的概念,使用方法和文件缓冲区的位置
145 0
|
JavaScript PHP
文件bom头,文件bom头保存的什么东西,php读取bom头数据
文件bom头,文件bom头保存的什么东西,php读取bom头数据
94 0
|
安全 数据安全/隐私保护
Web---字节输出流和字符输出流的共存问题、转发、重定向、请求包含知识点讲解(2)
Web---字节输出流和字符输出流的共存问题、转发、重定向、请求包含知识点讲解
136 0
Web---字节输出流和字符输出流的共存问题、转发、重定向、请求包含知识点讲解(2)
|
Android开发
【Android 逆向】ELF 文件格式 ( 程序头偏移量 | 节区头偏移量 | 处理器特定标志 | ELF 文件头大小 )
【Android 逆向】ELF 文件格式 ( 程序头偏移量 | 节区头偏移量 | 处理器特定标志 | ELF 文件头大小 )
225 0
【Android 逆向】ELF 文件格式 ( 程序头偏移量 | 节区头偏移量 | 处理器特定标志 | ELF 文件头大小 )
Web---字节输出流和字符输出流的共存问题、转发、重定向、请求包含知识点讲解
Web---字节输出流和字符输出流的共存问题、转发、重定向、请求包含知识点讲解
175 0