在我们开发plsql程序的过程中,有时候难免要访问一些外部网站的数据。这个时候我们就要用到utl_http包。

使用utl_http包前需要注意的是,当前的用户下是否有访问外部网络的权限。

如下是自己总结的函数,欢迎大家交流学习。

get方式:

 function http_get(p_url in varchar2) return clob
is
http_req utl_http.req;
http_resp utl_http.resp;
l_raw raw(1024);
l_r clob;
begin
begin
http_req:=utl_http.begin_request(p_url,'GET');
http_resp := utl_http.get_response(http_req, TRUE);
loop
utl_http.read_raw(http_resp, l_raw,1024);
l_r:=l_r||utl_raw.cast_to_varchar2(l_raw);
end loop;
utl_http.end_response(http_resp);
exception
when utl_http.end_of_body then
utl_http.end_response(http_resp);
end;
return l_r;
end;

post方式:

 function  http_post(
p_url in varchar2,
p_data in varchar2 --a=1&b=2...
) return clob
is
http_req utl_http.req;
http_resp utl_http.resp;
l_raw raw(1024);
l_r clob;
begin
begin
http_req:=utl_http.begin_request(p_url,'POST');
utl_http.set_header(http_req,'Content-Type','application/x-www-form-urlencoded;charset=utf-8');
utl_http.set_header(http_req,'Content-Length',length(p_data));
utl_http.write_text(http_req,p_data);
http_resp := utl_http.get_response(http_req, TRUE);
loop
utl_http.read_raw(http_resp, l_raw,1024);
l_r:=l_r||utl_raw.cast_to_varchar2(l_raw);
end loop;
utl_http.end_response(http_resp);
exception
when utl_http.end_of_body then
utl_http.end_response(http_resp);
end;
return l_r;
end;

The END.

最新文章

  1. Scrapy shell调试网页的信息
  2. springMVC 拦截器如何做登录检查及页面跳转
  3. 冰球项目日志1-yjw
  4. spring注解说明之Spring2.5 注解介绍(3.0通用)
  5. 路由跟踪语法:tracert www.love125.com
  6. PAT/图形输出习题集
  7. LVM逻辑卷管理
  8. VS中Debug和Realease、及静态库和动态库的区别整理
  9. WebApi传参总动员(四)
  10. Scala循环操作
  11. 人在江湖飘,哪能不挨刀。CENTOS之后,UBUNTU,FEDORA都要安装起来作测试啊
  12. zzbank oneOpencloud Env linuxaix6.1 interactiveMaintain(nfs,aix genintall基于系统iso光盘,aix6.1 puppet-Agent,Cent6.4 puppetServer,agent time no syn case Er)
  13. CodeForces758A
  14. 12. leetcode 455.Assign Cookies
  15. 201521123044 《Java程序设计》第13周学习总结
  16. 简单易用的IT运维服务器管理程序
  17. 一、开水白菜(steamed Chinese cabbage in supreme soup)
  18. dtNavMeshQuery::findLocalNeighbourhood m_tinyNodePool->getNode dtHashRef整数哈希 getPortalPoints dtOverlapPolyPoly2D
  19. 海思HI3518由于sensor对齐方式问题导致视频花屏
  20. C语言中:static与extern对变量和函数的作用

热门文章

  1. JS思维导图
  2. Json数据异步绑定到界面的Table并且自动刷新
  3. HDU-1598 find the most comfortable road
  4. linux下出现+ ls --color=auto -l --color=auto...++ echo -ne '\033]0;root@imon-2:~'等
  5. JavaScript高级程序设计34.pdf
  6. 依賴注入入門——Unity(二)
  7. (转载)TRS内容管理平台用户注册逻辑漏洞
  8. Code Forces Gym 100886J Sockets(二分)
  9. hibernate.Session简介
  10. PAT 1076. Forwards on Weibo (30)