`

Java技巧:Java向Web站点发送POST请求

    博客分类:
  • Java
阅读更多

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

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

// Using java.net.URL and

//java.net.URLConnection

URL url = new

URL("http://jobsearch.dice.com/jobsearch/jobsearch.cgi");

URLConnection connection = url.openConnection();

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

...

connection.setDoOutput(true);

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

...

OutputStreamWriter out = newOutputStreamWriter(uc.getOutputStream(), "8859_1");

out.write("username=bob&password="+password+"");

// remember to clean up

out.flush();

out.close();

这样就可以发送一个看起来象这样的POST:

POST /jobsearch/jobsearch.cgi HTTP 1.0

ACCEPT: text/plain

Content-type: application/x-www-form-urlencoded

Content-length: 99

username=bob

password=someword

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

connection.getInputStream();

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

分享到:
评论

相关推荐

    java模拟ie 访问web

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

    Java 使用HttpClient保持SESSION状态

    为了保持SESSION状态,我们需要处理服务器返回的Cookie,并在后续请求中发送回去。以下是一个基本步骤: 1. **创建HttpClient实例**:首先,创建一个HttpClient实例,可以使用`HttpClients.createDefault()`或者...

    tableauserver-java交互.pdf

    接收到请求后,Web服务器向Tableau Server发起POST请求,其中包含特定的username参数,该参数是Tableau Server上的有效用户账户。如果Tableau Server运行有多个站点,POST请求还需要包含target_site参数,以指定...

    Java 上传文件到 SharePoint

    对于SharePoint的REST API,我们可以通过发送POST请求到特定的URL来上传文件,URL格式通常是`https://<sharepoint-site-url>/_api/web/GetFolderByServerRelativeUrl('<folder-path>')/Files/Add(url='<file-name>',...

    Web站点跨域说明

    "Web站点跨域说明"主要关注如何解决这个问题。在描述中提到的"虚拟路径资源跨域问题",可能是指在使用服务器的虚拟路径或者CDN服务时遇到的跨域限制。解决这个问题通常有以下几种方法: 1. **CORS(跨源资源共享)*...

    Java web面试题

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

    Zxy97 Web服务器

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

    JAVA_UCenter

    UCenter 与Java应用之间的通信通常基于HTTP协议,因此需要了解HTTP请求和响应的基本结构,如GET、POST请求,以及HTTP头和请求体的构造。 4. **JSON格式**:通常API的数据交换格式为JSON,所以掌握JSON的解析和生成...

    D.Java:Drupal 和 Java 集成。 只是为了好玩和学习 Java

    标题中的“D.Java: Drupal 和 Java 集成”表明我们将探讨如何将流行的开源内容管理系统Drupal与Java技术栈集成,这通常涉及到Web服务、API调用或者直接在Drupal中使用Java库。这样的集成可能用于利用Java的强大功能...

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

    这是一个使用Java语言开发的公交查询系统,它允许用户通过Web界面查询公交路线和站点信息。 【描述】"公交查询系统 java公交查询系统 jsp公交查询系统源码(java开发)"强调了系统的功能和开发语言。公交查询系统...

    Java从网络取得文件项目源代码

    7. **HTTP协议**:如果源代码涉及到HTTP请求,可能使用了`HttpURLConnection`或者第三方库如Apache HttpClient或OkHttp,来发送GET或POST请求,处理响应头和状态码。 8. **HTTPS安全连接**:如果文件位于HTTPS站点...

    java运行报错

    - 客户端发送的请求包含无效的 URL 或参数。 - 请求头部包含格式错误的数据,如 Content-Length 字段与实际数据长度不符。 - POST 请求的实体主体格式错误。 **解决方案**: - 检查并修正客户端代码中的请求格式。 ...

    java笔试题

    - `doGet()`处理GET请求,`doPost()`处理POST请求,由表单的`method`属性决定。 7. **Servlet生命周期的四个阶段**: - 加载与实例化 - 初始化:调用`init()`方法 - 服务:调用`service()`方法,进而调用`doGet...

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

    - 当用户输入字符时,通过Ajax发送请求到服务器。 - 接收服务器返回的数据,并动态更新页面上的结果列表。 ```javascript $(document).ready(function(){ $("#searchInput").keyup(function(){ var query = $...

    java 网络爬虫源码

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

    javaweb安全问题解决方案

    2. 已解密的登录请求: 为了保护用户密码,应该在客户端(如JavaScript)进行加密,然后在服务器端(如Java)解密。可以使用RSA等公钥加密算法。另外,确保使用HTTPS协议传输数据,以提供端到端的加密。 3. 登录...

    java(结合lucene)版的公交搜索系统

    这表明该系统可能利用Java的后端开发能力来处理用户请求和数据管理,同时利用Lucene的全文检索能力来实现对公交线路、站点等信息的快速查找和匹配。这种结合可以为用户提供实时、精准的公交线路查询服务。 【标签...

Global site tag (gtag.js) - Google Analytics