soapUI发送post请求json格式,返回请求数据为空
2018-03-13 21:18
1666 查看
使用soupUI发送post请求,活的结果告诉请求参数为空,意思就是没有请求到body的内容,但是用postman等工具都是正常的。
于是,查看系统接口日志。提示获取http请求的body失败。
网上查询第二句话,”java.nio.charset.MalformedInputException: Input length = 1“,意思就是“
会出现java.nio.charset.MalformedInputException异常,原因是“半个中文问题”。分析上面的程序,就是因为CharsetDecoder对ByteBuffer进行解码的时候,不能保证都可以成功解码成汉字,也许里面有“半个汉字“也说不准。说以当有半个汉字的时候就会出现该异常。 举个例子,因为在GBK中字母占1byte,汉字占2byte。如"我ABC汉字d"这个字符串,截取5个字节的时候,应该是"我ABC",而截取8个字节的时候,应该是"我ABC汉",而不应该是"我ABC汉?",其中"?"为半个汉字,可理解为向前截取 。所以就会报异常。 (备注:将字符编码GBK改为UTF-8,则每个中文长度按3个字符计算 )”这部分内容为copy,其实就是我们的请求中带有中文,所以要编码格式为UTF-8.很简单,我们只需要修改Encoding的值为utf-8即可。
再次发送请求:成功。
于是,查看系统接口日志。提示获取http请求的body失败。
网上查询第二句话,”java.nio.charset.MalformedInputException: Input length = 1“,意思就是“
会出现java.nio.charset.MalformedInputException异常,原因是“半个中文问题”。分析上面的程序,就是因为CharsetDecoder对ByteBuffer进行解码的时候,不能保证都可以成功解码成汉字,也许里面有“半个汉字“也说不准。说以当有半个汉字的时候就会出现该异常。 举个例子,因为在GBK中字母占1byte,汉字占2byte。如"我ABC汉字d"这个字符串,截取5个字节的时候,应该是"我ABC",而截取8个字节的时候,应该是"我ABC汉",而不应该是"我ABC汉?",其中"?"为半个汉字,可理解为向前截取 。所以就会报异常。 (备注:将字符编码GBK改为UTF-8,则每个中文长度按3个字符计算 )”这部分内容为copy,其实就是我们的请求中带有中文,所以要编码格式为UTF-8.很简单,我们只需要修改Encoding的值为utf-8即可。
再次发送请求:成功。
相关文章推荐
- 使用jQuery发送POST,Ajax请求返回JSON格式数据
- [SoapUI] 通过SoapUI发送POST请求,请求的body是JSON格式的数据
- java 通过发送json,post请求,返回json数据的方法
- iOS开发-post请求向服务器发送json格式数据(数组或字典)
- Java 模拟post请求,发送json格式数据
- Java后台发送Post请求,数据传输格式JSON
- 使用Ajax发送Struts2请求返回JSON数据格式
- PHP 使用curl库来发送GET,POST请求,处理json格式数据
- Kinbana监控数据获取 Jsoup 发送 Post请求 RequestBody 为 Json格式
- 初涉Ajax,以post或get方法发送数据,以json或xml形式接收服务器返回的请求
- POST请求发送JSON格式的数据
- 使用xutils发送POST请求,携带json和图片二进制文件数据获取服务器端返回json数据
- java 通过发送json,post请求,返回json数据
- ajax请求当发送post方式application/json格式数据,url后面又带有参数的时候
- iOS开发-post请求向服务器发送json格式数据(数组或字典)
- Android向Web服务器发送Post请求并返回数据
- HttpURLConnection 发送post请求。并将结果以JSONObject对象返回的轮子
- 请求第三方接口返回json格式数据的解析
- Http Post请求提交json格式数据工具类,解决请求参数中文乱码问题
- Java post请求发送json数据在filter中解析方法