欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  Java

分享URLConnection调用接口实例

程序员文章站 2022-04-30 14:44:41
...

这篇文章主要介绍了Java的后台调用HttpURLConnection的类模拟浏览器请求实例,该实例可用于接口调用,具有一定的实用价值,需要的朋友可以参考下

一般在项目开发中难免遇到外部接口的调用,本文实例讲述了Java的。后台调用HttpURLConnection的类模拟浏览器请求的方法可用于接口调用分享给大家供大家参考

写在前面:

  项目是java web,jdk1.4,weblogic 7;对方.net系统,用wcf开发的接口。对方提供接口url地址,以及说明用post方式去调用,无需传递参数,直接返回json array(json数组格式的数据)

  调用接口的方法有很多中,框架调用,ajax调用,urlConnection等等.由于项目需要,需要远程调用对方.net系统的接口,其接口是用wcf开发的,然后我们这边的系统是java,并且jdk是1.4,所以主流的一些框架调用已经用不了了,一般要jdk1.6以上才可以。说到这里,axis是可以适用于jdk1.4的,但是当采用客户端生成代码的方式的时候,我生成的类有缺少,不知道为啥,果断放弃;然后由于是跨域调用接口(也就是双方的系统不在一个服务器里面),并且需要post方式去访问,故ajax的方式也不行,因为ajax不支持跨域,当然利用jsonp是可以跨域的,但是它是采用get方式访问的。在挣扎尝试了两三天后,求助贴吧大神,大神跟我语音,让我用httpurlconnection的方式去访问,也就是URLConnection调用接口。之后,我又拿出了传智播客的webservice的视频笔记,上面也有提及到采用URLConnection调用接口,于是我就打算试试。成功啦......真是强大哈。。。(貌似这种方式可以适用于各种接口的调用,也可以调用webservice,大家都可以试一试,遇到问题不要怕,啊哈哈哈。。。。。)

  

  1.准备工作:

  对于URLConnection调用接口貌似不需要导入任何相关的jar包,这个要根据项目来定。这里返回的是json数组的字符串,所以这里我要用到json相关的jar来进行获取。导入json的jar包就可以了。

  代码:可以自己先写一个main java程序来连接测试一下,然后再放到具体的项目上去进行调用。

  URL url =  URL("http://10.10.10.83/GetProjectNameService/GetProjectNameService.svc/getProjectName"URLConnection conn =HttpURLConnection httpConn =System.setProperty("sun.net.client.defaultConnectTimeout", "30000""sun.net.client.defaultReadTimeout", "30000"httpConn.setDoInput(httpConn.setUseCaches(httpConn.setRequestMethod("POST"OutputStream out =ObjectOutputStream objOut =  String(""InputStream in =StringBuffer sb = = = ""(httpConn.getResponseCode() == 200BufferedReader reader =  BufferedReader( InputStreamReader(in,"UTF-8"= ((line = reader.readLine()) != ="返回结果:"+jarr = ( i=0;i<jarr.length();i++

以上就是分享URLConnection调用接口实例的详细内容,更多请关注其它相关文章!