问题:URL=http://www.baidu.com/s?wd=%E6%B5%B7%E6%B7%80%E9%BB%84%E5%BA%84"中要对%E6%B5%B7%E6%B7%80%E9%BB%84%E5%BA%84进行参数化,但是由“中国”进行URL编码过来的(原因:URL的传参值,中文是无法进行ASCII编码的),所以无法直接用中文参数化,由于LR提供了lr_convert_string_encoding方法,所以要将中文进行URL编码和解码,是很容易的,故解决方法如下:   
  
 //URL编码
 lr_convert_string_encoding("中国",LR_ENC_SYSTEM_LOCALE, LR_ENC_UTF8 , "UnicodeString");

lr_save_string (lr_eval_string("{UnicodeString}"),"nURLencoder" );

web_convert_param("nURLencoder", "SourceEncoding=PLAIN", "TargetEncoding=URL",LAST );

lr_output_message("Url编码 = %s",lr_eval_string("{nURLencoder}"));

//URL解码
 lr_save_string (lr_eval_string("{nURLencoder}"),"URLencoder" );

web_convert_param("URLencoder", "SourceEncoding=URL", "TargetEncoding=PLAIN",LAST );

lr_convert_string_encoding(lr_eval_string("{URLencoder}"),LR_ENC_UTF8 ,LR_ENC_SYSTEM_LOCALE, "UnicodeString1");

lr_output_message("Url解码 = %s",lr_eval_string("{UnicodeString1}"));

---------------------------------------------------------------------------------------------------

///
    /// url编码
    /// 
    lr_convert_string_encoding(lr_eval_string("{NewParam}"),LR_ENC_SYSTEM_LOCALE, LR_ENC_UTF8 , "UnicodeString");

lr_save_string (lr_eval_string("{UnicodeString}"),"nURLencoder" );

web_convert_param("nURLencoder", "SourceEncoding=PLAIN", "TargetEncoding=URL",LAST );

//lr_output_message("nURLencoder=%s",lr_eval_string("{nURLencoder}"));

///
    /// url解码
    ///

lr_save_string(lr_eval_string("{nURLencoder}"),"URLencoder");

web_convert_param("URLencoder", "SourceEncoding=URL", "TargetEncoding=PLAIN",LAST );

//lr_output_message("URLencoder=%s",lr_eval_string("{URLencoder}"));

lr_convert_string_encoding(lr_eval_string("{URLencoder}"),LR_ENC_UTF8, LR_ENC_SYSTEM_LOCALE , "UnicodeString2");

//lr_output_message("UnicodeString=%s",lr_eval_string("{UnicodeString}"));

lr_error_message("原始值为=%s,编码为=%s,解码为=%s",lr_eval_string("{NewParam}"),lr_eval_string("{nURLencoder}"),lr_eval_string("{UnicodeString2}"));

LR URL编码和解码方法的更多相关文章

  1. Web开发须知:URL编码与解码

    通常如果一样东西需要编码,说明这样东西并不适合传输.原因多种多样,如Size过大,包含隐私数据,对于Url来说,之所以要进行编码,是因为Url中有些字符会引起歧义. 例如,Url参数字符串中使用key ...

  2. java中的url 编码与解码

    什么是application/x-www-form-urlencoded字符串? 答:它是一种编码类型.当URL地址里包含非西欧字符的字符串时,系统会将这些字符转换成application/x-www ...

  3. Oracle url编码与解码

      Oracle url编码与解码 CreateTime--2018年3月30日17:26:36 Author:Marydon 一.url编码 实现方式:utl_url.escape() 说明:utl ...

  4. URL编码及解码

    为什么要对URL进行编码? 一般来说,网页URL只能使用英文.数字.还有一些特定的字符.根据网络标准RFC 1738做了硬性规定: 只有字母和数字[0-9a-zA-Z].一些特殊符号"$-_ ...

  5. python接口自动化测试十三:url编码与解码

    # url编码与解码 from urllib import parse url = 'http://zzk.cnblogs.com/s/blogpost?Keywords=中文' a = '中文' b ...

  6. python中的URL编码和解码

    python中的URL编码和解码:test.py # 引入urllib的request模块 import urllib.request url = 'https://www.douban.com/j/ ...

  7. Delphi编码与签名【URL编码与解码,Base64编码与解码,MD5加密,HMAC-SHA1、HMAC-SHA224、HMAC-SHA256、HMAC-SHA384和HMAC-SHA512签名】

    作者QQ:(648437169) 点击下载➨delphi编码与签名 [Delphi编码与签名]URL编码与解码,Base64编码与解码,MD5加密,HMAC-SHA1.HMAC-SHA224.HMAC ...

  8. JS 关于 URL 的编码或解码方法

    URL的合法字符 URL的合法字符表示再浏览器的地址栏中不会被转义的字符,有两种: URL元字符:分号(;),逗号(’,’),斜杠(/),问号(?),冒号(:),at(@),&,等号(=),加 ...

  9. IOS URL 编码和解码

    1.url编码 ios中http请求遇到汉字的时候,需要转化成UTF-8,用到的方法是: NSString * encodingString = [urlString stringByAddingPe ...

随机推荐

  1. Struts标签判断当前用户是否存在

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  2. java基础解疑!!!

    疑问一:0.01+0.09的结果? public class MathTest{ public static void main(String[]args){ double a = 0.01, b = ...

  3. Wince/VC高效PNG贴图,自定义Alpha算法

    工作中,做一些炫点的界面都需要用到PNG图片,Wince里面微软也提供了PNG图片的支持,不过Alpha的混合速度比较慢,所以自己实现了一个Alpha的混合运算接口,经过测试,要比微软AlphaBle ...

  4. css部分样式资料

    1. css字体 Lato,"Helvetica Neue","Segoe UI",Helvetica,Arial,sans-serif

  5. 【WPF】使用控件MediaElement播放视频

    需求是点击按钮后,弹出弹窗播放视频.按钮的点击事件如下. public void ShowVideo() { Window window = new Window(); window.Width = ...

  6. [Timer]应用层实现sleep

    转自:https://www.cnblogs.com/longbiao831/p/4556246.html Select只能做延时,可以做回调吗? 本文讲述如何使用select实现超级时钟.使用sel ...

  7. Go Revel - main函数分析

    运行revel命令时,首先会编译整个项目,在编译时,会根据`app.conf`配置文件生成两个源码文件`tmp/main.go`.`routes/routes.go`,其中`main.go`是整个项目 ...

  8. spring boot 使用拦截器 无法注入 配置值 、bean问题

    参考:https://www.cnblogs.com/SimonHu1993/p/8360701.html 一定要将 拦截器组件 交给spring容器进行管理,这样才能注入配置值,或者注入bean: ...

  9. Java获取mysql数据库元数据

    修改后的版本: package com.genratesql.util; import java.sql.Connection; import java.sql.DatabaseMetaData; i ...

  10. 利用memcpy函数实现float到QByteArray的相互转化

    一.为什么要实现float到QByteArry之间的相互转化 在总线通讯过程中(例如串口通讯),总线上传输的是字节数组变量,即ByteArray型的变量,在Qt中即为QbyteArray型变量.总线发 ...