LoadRunner web请求和响应中文乱码解决办法
先来认识下lr_convert_string_encoding:
int lr_convert_string_encoding( const char *sourceString, const char *fromEncoding,const char *toEncoding, const char *paramName);
官方参数解释:
sourceString:The string to convert
fromEncoding :The encoding of the sourceString
toEncoding:The encoding to convert of the string saved in parameter paramName
paramName:The name of the parameter in which the destination string will be saved
中文参数解释:
sourceString:被转换的源字符串。
fromEncoding:转换前的字符编码。
toEncoding:要转换成为的字符编码。
paramName:转换后的目标字符串。
常量和值得关系:
|
Constant |
Value |
|
LR_ENC_SYSTEM_LOCALE |
NULL |
|
LR_ENC_UTF8 |
"utf-8" |
|
LR_ENC_UNICODE |
"ucs-2" |
1、request乱码:将中文消息使用lr_convert_string_encoding先转码,再传入请求参数
注意:请求转码函数必须写在请求函数之前
//中文请求参数转换
lr_convert_string_encoding( "我是肖恩",LR_ENC_SYSTEM_LOCALE,LR_ENC_UTF8, "str" );
lr_save_string(lr_eval_string("{str}"),"strvalue");
2、response乱码:将响应乱码lr_convert_string_encoding先转码,再输出(这样在lr的日志中就能看到正常的中文了)
注意:响应转换函数必须写在请求函数之后
//响应乱码转换
lr_convert_string_encoding(lr_eval_string("{value01}"), LR_ENC_UTF8,LR_ENC_SYSTEM_LOCALE,"BM");
lr_error_message(lr_eval_string("{BM}"));
两种完整代码如下:
web_reg_save_param_ex(
"ParamName=value01",
"LB=,\"msg\":\"",
"RB=,\"data",
SEARCH_FILTERS,
LAST);
//中文请求参数转换
lr_convert_string_encoding( "我是肖恩",LR_ENC_SYSTEM_LOCALE,LR_ENC_UTF8, "str" );
lr_save_string(lr_eval_string("{str}"),"strvalue");
//下订单
web_custom_request("下订单",
"URL=http://192.168.145.130:8080/mobile/api/order/addorder",
"Method=POST",
"TargetFrame=",
"Resource=0",
"Referer=",
"Mode=HTML",
"EncType=application/json",
"Body={\"token\":\"{get_token}\",\"getAddrId\":1,\"getCarId\":23,\"payType\":2,\"remark\":\"{strvalue}\",\"price\":1,\"orders\":[{\"getTime\":\"1450921104000\",\"goodss\":[{\"goodsId\":93,\"count\":1},{\"goodsId\":96,\"count\":1}]}],\"invoiceTitle\":\"fapiao\"}",
LAST);
//响应乱码转换
lr_convert_string_encoding(lr_eval_string("{value01}"), LR_ENC_UTF8,LR_ENC_SYSTEM_LOCALE,"BM");
lr_error_message(lr_eval_string("{BM}"));
3、lr里面乱码设置:(此方法不一定能解决响应乱码问题,但是大部分都可以解决)

小白记录~~ 欢迎评论留言~~
LoadRunner web请求和响应中文乱码解决办法的更多相关文章
- Jmeter响应中文乱码解决办法
JMeter当响应页面没有设置编码时,默认会从jmeter.properties配置文件中sampleresult.default.encoding的配置进行设置,默认使用ISO8859-1,在配置文 ...
- 使用httpclient post请求中文乱码解决办法
使用httpclient post请求中文乱码解决办法 在使用httpclient发送post请求的时候,接收端中文乱码问题解决. 正文: 我们都知道,一般情况下使用post请求是不会出现中文乱码 ...
- [Linux] - CentOS中文乱码解决办法
CentOS 7 终端中文乱码解决办法: 1.使用vim编辑locale.config文件: vim /etc/locale.conf 2.将LANG="en_US.UTF-8"修 ...
- Oracle导入中文乱码解决办法
Oracle导入中文乱码解决办法 一.确保各个客户端字符集的编码同服务器字符集编码一致 1- 确定sqlplus字符集编码,如果是windows设置环境变量. 2- 确保Sec ...
- NetBeans中文乱码解决办法
一.Windows下NetBeans中文乱码解决办法 找到你的Netbeans安装目录下的etc文件夹,用记事本打开netbeans.conf,找到netbeans_default_options(不 ...
- centos7.2中文乱码解决办法
centos7.2 中文乱码解决办法 1.查看安装中文包: 查看系统是否安装中文语言包 (列出所有可用的公共语言环境的名称,包含有zh_CN) # locale -a |grep "zh_C ...
- windows下git bash中文乱码解决办法
一.解决办法1:(直接上图) 1.在git bash下,右键 出现下图,选择options: 2.选择“Text” 3.将“Character set”设置为 UTF-8 转:windows下git ...
- Matplotlib中文乱码解决办法
Matplotlib中文乱码 解决方法如下: 首先设置源码文件编码方式为UTF-8 #-*- coding: utf-8 -*- 接着设置字体属性字典 font = {'family': 'SimHe ...
- .js文件中文乱码解决办法
描述:.js文件里的中文内容在网页中显示乱码 解决办法:把JS文件的编码改为utf-8 VS2013解决步骤:文件——高级保存选项——Unicode (UTF-8带签名) 代码页 65001
随机推荐
- "Linux内核分析"第七周
可执行程序的装载 张文俊+原创作品转载请注明出处+<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.预 ...
- week3-构造一个简单的linux系统
潘恒 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.gdb跟踪调试内核 ...
- 【MOOC EXP】Linux内核分析实验八报告
程涵 原创博客 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 进程的切换和系统的一般执行过程 知识点 ...
- Leetcode——171.Excel表列序号【水题】
@author: ZZQ @software: PyCharm @file: leetcode171_Excel表列序号.py @time: 2018/11/22 15:29 要求: 给定一个Exce ...
- C++中struct 和 class的区别
首先,C++中类的定义,从狭义上理解,就是我们使用的class类型.从广义上,类就是定义了一个新的类型和新的作用域,它具有成员函数和成员数据. 而对广义类定义的实现分为两种,一种是使用struct实现 ...
- CMake系列之二:入门案例-单个源文件
编写一个源码文件 如下 #include<stdio.h> #include<stdlib.h> double power(double base,int exponent) ...
- book项目分析
需求1:用户注册 需求如下: 1)访问注册页面 2)填写注册信息,提交给服务器 3)服务器应该保存用户 4)当用户已经存在----提示用户注册 失败,用户名已存在 5)当用户不存在-----注册成功 ...
- Estimating the number of receiving nodes in 802.11 networks via machine learning
来源:IEEE International Conference on Communications 作者:Matteo Maria 年份:2016 摘要: 现如今很多移动设备都配有多个无线接口,比如 ...
- Failed to execute goal org.springframework.boot
报错 [ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:1.4.0.RELEASE:ru ...
- Javascript中实现继承的方式
js中实现继承和传统的面向对象语言中有所不同:传统的面向对象语言的继承由类来实现,而在js中,是通过构造原型来实现的,原型与如下几个术语有关: ①构造函数:在构造函数内部拥有一个prototype属性 ...