http请求头传递中文,服务器读取指定属性为乱码

问题描述

项目中用到httpClient向服务器发送http请求,具体代码如下:HttpClient httpclient = new DefaultHttpClient();HttpPost httppost = new HttpPost("URL");/** * 服务器端request.getHeader("zhongwen");获取 * 的信息为乱码(尝试了一些转码方法), * 麻烦各位大牛帮下忙**/httppost.addHeader("zhongwen", "中文测试");FileBody bin = new FileBody(new File("D://测试附件.zip"));MultipartEntity reqEntity = new MultipartEntity();reqEntity.addPart("upload", bin);httppost.setEntity(reqEntity);HttpResponse response = httpclient.execute(httppost);如果哪位大牛有别的解决方案,可以将“zhongwen”,"upload"两属性传递至服务器,麻烦给下

解决方案

1、客户端method.addRequestHeader("hello", URLEncoder.encode("中文", "UTF-8"));2、服务器value = URLDecoder.decode(value);
解决方案二:
用native2ascii命令把中文测试转换一下:httppost.addHeader("zhongwen", "u4e2du6587u6d4bu8bd5"); native2ascii在java安装目录下
解决方案三:
检查的你的java源代码文件是什么编码,一般用“UTF-8”

时间: 2024-09-28 22:57:20

http请求头传递中文,服务器读取指定属性为乱码的相关文章

PHP URL传递中文乱码问题解决办法

在使用 ?id="中文" 传递中文参数时,出现了乱码,这是经过了二次转码后的结果,其中,在 php 中,url 中是不可以直接传输中文的,对于这点,一直心存不满,没办法呀,谁让咱没一套解决方案呢,不知道别的语言是不是也出现这样的问题. 对于网上所说的在首页添加 header("content-type:text/html;charset=utf-8″); 这样的代码,以及把数据库页面等等设置成 utf8 的解决方案根本无效,始终传递过来的中文是乱码. 尽管所有 04ie.co

五、读取HTTP请求头

请求 5.1 HTTP请求头概述 HTTP客户程序(例如浏览器),向服务器发送请求的时候必须指明请求类型(一般是GET或者POST).如有必要,客户程序还可以选择发送其他的请求头.大多数请求头并不是必需的,但Content-Length除外.对于POST请求来说Content-Length必须出现. 下面是一些最常见的请求头: Accept:浏览器可接受的MIME类型. Accept-Charset:浏览器可接受的字符集. Accept-Encoding:浏览器能够进行解码的数据编码方式,比如g

jsp Servlet基础入门学习:读取HTTP请求头

js|servlet|请求     5.1 HTTP请求头概述 HTTP客户程序(例如浏览器),向服务器发送请求的时候必须指明请求类型(一般是GET或者POST).如有必要,客户程序还可以选择发送其他的请求头.大多数请求头并不是必需的,但Content-Length除外.对于POST请求来说Content-Length必须出现. 下面是一些最常见的请求头: Accept:浏览器可接受的MIME类型. Accept-Charset:浏览器可接受的字符集. Accept-Encoding:浏览器能够

JSP 读取HTTP请求头

js|请求 5.1 HTTP请求头概述 HTTP客户程序(例如浏览器),向服务器发送请求的时候必须指明请求类型(一般是GET或者POST).如有必要,客户程序还可以选择发送其他的请求头.大多数请求头并不是必需的,但Content-Length除外.对于POST请求来说Content-Length必须出现. 下面是一些最常见的请求头: Accept:浏览器可接受的MIME类型. Accept-Charset:浏览器可接受的字符集. Accept-Encoding:浏览器能够进行解码的数据编码方式,

五、读取HTTP请求头_JSP编程

5.1 HTTP请求头概述 HTTP客户程序(例如浏览器),向服务器发送请求的时候必须指明请求类型(一般是GET或者POST).如有必要,客户程序还可以选择发送其他的请求头.大多数请求头并不是必需的,但Content-Length除外.对于POST请求来说Content-Length必须出现. 下面是一些最常见的请求头: Accept:浏览器可接受的MIME类型. Accept-Charset:浏览器可接受的字符集. Accept-Encoding:浏览器能够进行解码的数据编码方式,比如gzip

读取HTTP请求头

HTTP客户程序(例如浏览器),向服务器发送请求的时候必须指明请求类型(一般是GET或者POST).如有必要,客户程序还可以选择发送其他的请求头.大多数请求头并不是必需的,但Content-Length除外.对于POST请求来说Content-Length必须出现. 下面是一些最常见的请求头: Accept:浏览器可接受的MIME类型. Accept-Charset:浏览器可接受的字符集. Accept-Encoding:浏览器能够进行解码的数据编码方式,比如gzip.Servlet能够向支持g

Android编程向服务器发送请求时出现中文乱码问题的解决方法_Android

本文实例讲述了Android编程向服务器发送请求时出现中文乱码问题的解决方法.分享给大家供大家参考,具体如下: 我们在andorid项目中通过get方式向服务器发送请求,其中url参数带有中文,将会产生乱码,乱码产生的原因有两种: 1. 在提交参数时,没有对中文参数进行URL编码 2. Tomcat服务器默认采用的是IOS8859-1编码(不支持中文)得到参数值 解决: 1. 进入android项目,在其中要提交参数的时候,对参数的值进行编码: 复制代码 代码如下: URLEncoder.enc

request-为什么设置了请求头为range格式,服务器返回码却是200而不是206呢?

问题描述 为什么设置了请求头为range格式,服务器返回码却是200而不是206呢? HTTP1.1 中的状态码与状态描述中有写道 206 Partial Content 客户发送了一个带有Range头的GET请求,服务器完成了它(HTTP 1.1新). 然后我的客户端代码: HttpURLConnection connection = (HttpURLConnection) url.openConnection();connection.setRequestMethod(""GET&

详解okhttp3 请求头不能为中文的坑

对源码有一定的了解,以为基本可以驾驭了,谁知道,坑来了. 问题描述: 上线接口的某一天,有用户报障,说登录不上,而且陆续有报障. 通过log 发现登录不上,都有一个类似的报错: "java.lang.IllegalArgumentException: Unexpected char 0x514d at 4 in wifiSsid value: "360免费WiFi-DP" at " 什么?怎么和wifiSsid有关系了?后来查了一下代码,发现确实在登录接口上通过请求