注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

北漂的小羊

Java编程,开发者,程序员,软件开发,编程,代码。新浪微博号:IT国子监

 
 
 

日志

 
 
关于我

在这里是面向程序员的高品质IT技术学习社区,是程序员学习成长的地方。让我们更好地用技术改变世界。请关注新浪微博号: IT国子监(http://weibo.com/itguozijian)

网易考拉推荐

在Java程序中可以直接调用jsp、Struts Action等网络资源  

2012-11-06 16:55:55|  分类: JAVA |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

在Java程序中可以直接调用jsp、Struts Action等网络资源,示例代码:

Java代码 
  1. String title = "这是标题";  
  2. String url_str = "http://127.0.0.1:8080/struts/login.do?title=";  
  3. URL url = new URL(url_str+title);  
  4. HttpURLConnection connection = (HttpURLConnection) url.openConnection();  
  5. connection.connect();  
  6. int code = connection.getResponseCode();  
  7. log.info("code========" + code);  

注意:若不调用如下代码,则不能调用成功

 

int code = connection.getResponseCode(); 

 

资料1:

Java代码 
  1. //java如何通过url调用远程接口并读取返回信息?  
  2.     String ticket = "";//登录凭证  
  3.     String url_str = "http://www.sina.com.cn?ticket=";//获取用户认证的帐号URL  
  4.     String ticket_url = url_str + ticket;  
  5.     URL url = new URL(ticket_url);  
  6.     HttpURLConnection connection = (HttpURLConnection) url.openConnection();  
  7.     connection.connect();  
  8.   
  9.     int code = connection.getResponseCode();  
  10.     if (code == 404) {  
  11.         throw new Exception("认证无效,找不到此次认证的会话信息!");  
  12.     }  
  13.     if (code == 500) {  
  14.         throw new Exception("认证服务器发生内部错误!");  
  15.     }  
  16.     if (code != 200) {  
  17.         throw new Exception("发生其它错误,认证服务器返回 " + code);  
  18.     }  
  19.     InputStream is = connection.getInputStream();  
  20.     byte[] response = new byte[is.available()];  
  21.     is.read(response);  
  22.     is.close();  
  23.     if (response == null || response.length == 0) {  
  24.         throw new Exception("认证无效,找不到此次认证的会话信息!");  
  25.     }  
  26.     String userId = new String(response, "GBK");  
  27.     System.out.println(userId);  

 

资料2:

 

 Java代码 
  1.  URL u = new URL( url );  
  2.   URLConnection uc = u.openConnection();  
  3.   HttpURLConnection httpUC = (HttpURLConnection)uc;  
  4. //   设置是否向httpUrlConnection输出,因为这个是post请求,参数要放在http正文内,因此需要设为true, 默认情况下是false;  
  5.   httpUC.setDoOutput( true );  
  6. //   Post 请求不能使用缓存  
  7.   httpUC.setUseCaches(false);  
  8.     
  9. //  增加更多的请求头信息  
  10.   Iterator<String> it = requestHeads.keySet().iterator();  
  11.   while( it.hasNext() ){  
  12.    String name = it.next(); String value = requestHeads.get( name );  
  13.    httpUC.addRequestProperty( name , value );  
  14.   }  
  15.     
  16. //   设定传送的内容类型是可序列化的java对象  
  17. //   (如果不设此项,在传送序列化对象时,当WEB服务默认的不是这种类型时可能抛java.io.EOFException)  
  18.   httpUC.setRequestProperty("Content-type""application/x-java-serialized-object");  
  19. //  设定请求的方法为"POST",默认是GET  
  20.   httpUC.setRequestMethod("POST");  
  21.     
  22. //   连接,上面的配置必须要在connect之前完成. 不知道是否要连接池??? rhwang 2009-02-27  
  23.         httpUC.connect();   
  评论这张
 
阅读(579)| 评论(2)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016