`
flash59
  • 浏览: 97154 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

用java向一个Web站点发送POST请求

    博客分类:
  • WEB
阅读更多

向一个Web站点发送POST请求只需要简单的几步:

首先要和URL下的URLConnection对话。URLConnection可以很容易的从URL得到。比如:

java 代码
  1. // Using java.net.URL and    
  2.   
  3. //java.net.URLConnection    
  4.   
  5. URL url = new    
  6.   
  7. URL("http://jobsearch.dice.com/jobsearch/jobsearch.cgi");    
  8.   
  9. URLConnection connection = url.openConnection();    

然后把连接设为输出模式。URLConnection通常作为输入来使用,比如下载一个Web页。通过把URLConnection设为输出,你可以把数据向你个Web页传送。下面是如何做:

java 代码

最后,为了得到OutputStream,简单起见,把它约束在Writer并且放入POST信息中,例如:

java 代码
  1. ...    
  2.   
  3. OutputStreamWriter out = newOutputStreamWriter(uc.getOutputStream(), "8859_1");    
  4.   
  5. out.write("username=bob&password="+password+"");    
  6.   
  7. // remember to clean up    
  8.   
  9. out.flush();    
  10.   
  11. out.close();    
  12.   
  13. 这样就可以发送一个看起来象这样的POST:    
  14.   
  15. POST /jobsearch/jobsearch.cgi HTTP 1.0    
  16.   
  17. ACCEPT: text/plain    
  18.   
  19. Content-type: application/x-www-form-urlencoded    
  20.   
  21. Content-length: 99    
  22.   
  23. username=bob    
  24.   
  25. password=someword    
  26.   

一旦发送成功,用以下方法就可以得到服务器的回应:

connection.getInputStream();

一些Web站点用POST形式而不是GET,这是因为POST能够携带更多的数据,而且不用URL,这使得它看起来不那么庞大。使用上面列出的大致的代码,Java代码可以和这些站点轻松的实现对话。

分享到:
评论

相关推荐

    java模拟ie 访问web

    本文将详细讲解如何使用Java模拟IE浏览器访问Web站点,主要涉及的知识点包括HTTP协议、HttpClient库以及相关的请求与响应处理。 首先,我们要理解HTTP协议的基本原理。HTTP(超文本传输协议)是互联网上应用最广泛...

    Java 使用HttpClient保持SESSION状态

    在Java编程中,HttpClient是一个强大的库,用于执行HTTP请求,特别是在需要进行复杂的HTTP操作或大量HTTP请求时。在处理Web应用程序时,有时我们需要保持用户的登录状态,即SESSION状态。这通常涉及到Cookie管理,...

    tableauserver-java交互.pdf

    在Java环境中,可以使用`HttpServlet`和相关类(如`BufferedReader`、`OutputStreamWriter`等)来构造POST请求,模拟Web服务器与Tableau Server的交互。开发者需要正确编码用户名和URL参数,以及处理HTTP连接和响应...

    Web站点跨域说明

    当一个请求试图从一个域访问另一个域的资源时,如果这两个域不同,浏览器就会阻止这次请求,这就是所谓的跨域问题。 "Web站点跨域说明"主要关注如何解决这个问题。在描述中提到的"虚拟路径资源跨域问题",可能是指...

    Java 上传文件到 SharePoint

    3. 创建一个MultipartEntityBuilder,用于构建POST请求的多部分实体,包含文件内容和元数据。 4. 将文件内容添加到MultipartEntityBuilder,设置文件名和内容类型。 5. 设置“overwrite”参数,决定是否覆盖已存在的...

    Java web面试题

    当客户端通过Web服务器发送请求时,Servlet接收这些请求,并执行相应的逻辑来生成响应。 **1.2 Servlet的主要功能和作用是什么?** Servlet通过创建一个框架来扩展服务器的能力,使得服务器能够处理来自客户端的...

    Zxy97 Web服务器

    这款服务器能够帮助用户在指定的IP地址和端口上快速部署并运行一个小型的Web站点,为学习和测试提供便利。它的核心功能是处理HTTP请求并返回响应,支持基本的静态资源服务,如HTML、CSS和JavaScript文件的访问。 ...

    java-servlet-api.doc

    当一个Servlet被卸载时,引擎将不能给Servlet发送任何请求。引擎必须释放Servlet并完成无用存储单元的收集 Servlet映射技术\r 作为一个Servlet引擎的开发者,你必须对于如何映射客户端的请求到Servlet有大量的适应...

    JAVA_UCenter

    【JAVA_UCenter】是专为Java开发者设计的一个组件,它实现了与Discuz! UCenter的接口对接,使得Java应用程序能够无缝地与Discuz! 社区平台进行用户身份同步、数据交互等功能。Discuz! UCenter是知名的社区论坛系统...

    javaweb课程设计基础知识+教程+课件_02HTTP协议.pptx

    浏览器与 WEB 服务器的连接过程是短暂的,每次连接只处理一个请求和响应。 在 HTTP 协议中,请求消息和响应消息都是非常重要的组成部分。请求消息包括请求行、消息头和请求正文。请求行用于描述客户端的请求方式、...

    webService火车站点查询

    以下是一个简单的示例代码片段,展示了如何使用Asynchttpclient发送一个GET请求: ```java import com.ning.http.client.AsyncHttpClient; import com.ning.http.client.Response; public class TrainStationQuery...

    jsp公交查询系统源码(java开发)

    【标题】"jsp公交查询系统源码(java开发)"所涉及的知识点主要集中在Java Web开发领域,特别是使用JSP(JavaServer Pages)技术来构建一个公交查询的应用系统。JSP是Java EE平台的一部分,它允许开发者将动态内容...

    java 网络爬虫源码

    1. **HTTP请求**:使用Java的HttpURLConnection或第三方库如Apache HttpClient,发送GET或POST请求到目标网站,获取HTML内容。 2. **HTML解析**:使用Jsoup或其他类似库解析HTML文档,定位并提取所需元素。例如,...

    httpclient应用

    HttpClient是Apache基金会开发的一个Java库,它为Java程序员提供了一个强大的、灵活的、功能丰富的HTTP客户端API,使得处理HTTP协议变得更加简单。这个库不仅支持GET和POST请求,还支持HTTPS安全通信,使得开发者...

    在Java中使用Aiax技术实现自动完成功能

    ### 在Java中使用Ajax技术实现自动完成功能 #### 一、引言 随着Web应用的发展,用户体验成为了网站设计中的重要考量因素之一。自动完成功能作为一种提高用户体验的有效手段,在各大搜索引擎如Google、百度以及各类...

    java web服务器实现跨域访问

    跨域资源共享(CORS)是一种机制,允许Web页面向跨源服务器发出请求,从而克服同源策略的限制。下面是关于java web服务器实现跨域访问的知识点。 一、CORS概述 Cross-Origin Resource Sharing(CORS)是W3C提出的...

    javaweb安全问题解决方案

    防止CSRF攻击,可以添加一个随机令牌,并将其作为请求的一部分发送。在服务器端检查这个令牌是否合法,如果请求来源不可信,则拒绝处理。可以使用Servlet Filter来检查请求来源和CSRF令牌。 6. 启用了不安全的HTTP...

    用HttpClient来模拟浏览器GET_POST

    通常情况下,我们都是使用IE或Navigator浏览器来访问一个WEB服务器,用来浏览页面查看信息或者提交一些数据等等。但是,有些时候我们需要通过程序来访问这些页面,例如从别人的网页中“偷”一些数据,或者利用某些...

Global site tag (gtag.js) - Google Analytics