ORACLE接口http传输时中文转义 url_encode

url_encode

复制代码
CREATE OR REPLACE FUNCTION url_encode(urlEncode IN VARCHAR2)
  RETURN VARCHAR2 AS
BEGIN
  --utl_url.escape()该方法只能在函数中调用
  RETURN utl_url.escape(urlEncode, TRUE, 'utf-8');
END;
sql 复制代码
DECLARE
  l_url VARCHAR2(4000);
BEGIN
  l_url := 'https://127.0.0.1.com' || '?name=' || url_encode('世界');

  -- 设置字体
  UTL_HTTP.SET_BODY_CHARSET('UTF-8');

  -- 钱包安全 访问HTTPS必须
  utl_http.set_wallet('file:/***/ORCL/wallets','Xisland123456');

  -- 设置用 GET 方式请求
  L_HTTP_REQUEST := UTL_HTTP.BEGIN_REQUEST(L_URL, 'GET');

  DBMS_OUTPUT.put_line(l_url);
  -- 获取HTTP响应
  L_HTTP_RESPONSE := UTL_HTTP.GET_RESPONSE(L_HTTP_REQUEST);
END;

a. 这个 l_url := 'https://127.0.0.1.com' || '?name=' || url_encode('世界'); 打印出来的是

复制代码
https://127.0.0.1.com?name=%E4%B8%96%E7%95%8C

b. 这个 l_url := 'https://127.0.0.1.com' || '?name=' || '世界'; 打印出来的是

复制代码
https://127.0.0.1.com?name=世界

应该是转义后的数据,如果系统中没有url_encode,创建语句在最初上面

相关推荐
不断高歌1 小时前
MySQL基础随堂笔记3
数据库·mysql
筵陌1 小时前
MySQL表的增删查改(上)
数据库·mysql
国服第二切图仔1 小时前
Electron for 鸿蒙PC实战案例Gitcode口袋工具之HTTP请求封装的技术实现与设计解析
http·electron·gitcode
paperxie_xiexuo1 小时前
学术与职场演示文稿的结构化生成机制探析:基于 PaperXie AI PPT 功能的流程解构与适用性研究
大数据·数据库·人工智能·powerpoint
筵陌2 小时前
MySQL表的约束
数据库·mysql
UCoding2 小时前
我们来学mysql -- ReadView工作原理
数据库·mysql·readview工作原理
angushine2 小时前
解决MySQL慢日志输出问题
android·数据库·mysql
合作小小程序员小小店2 小时前
网页开发,在线%旧版本旅游管理%系统,基于eclipse,html,css,jquery,servlet,jsp,mysql数据库
java·数据库·servlet·eclipse·jdk·旅游·jsp
q***46522 小时前
Spring Boot 实战:轻松实现文件上传与下载功能
java·数据库·spring boot
腾讯云数据库3 小时前
「腾讯云 NoSQL 技术」之 Redis 篇|揭晓腾讯云Redis水平扩缩容极致流畅背后的技术玄机
数据库