- package net.java2000.net;
- import java.io.BufferedReader;
- import java.io.BufferedWriter;
- import java.io.InputStreamReader;
- import java.io.OutputStreamWriter;
- import java.net.InetAddress;
- import java.net.Socket;
- import java.net.URLEncoder;
- public class SocketHttpPost {
- public static void main(String[] args) {
- try {
-
- String data = URLEncoder.encode("name", "UTF-8") + "="
- + URLEncoder.encode("老紫竹", "UTF-8");
- data += "&" + URLEncoder.encode("message", "UTF-8") + "="
- + URLEncoder.encode("欢迎光临JAVA世纪网", "UTF-8");
-
- String hostname = "www.java2000.net";
- int port = 80;
- InetAddress addr = InetAddress.getByName(hostname);
- Socket socket = new Socket(addr, port);
-
- String path = "/test.jsp";
- BufferedWriter wr = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream(),
- "UTF8"));
- wr.write("POST " + path + " HTTP/1.0\r\n");
- wr.write("Host: <a target="_blank" href="www.java2000.net">www.java2000.net</a>\n");
- wr.write("Content-Length: " + data.length() + "\r\n");
- wr.write("Content-Type: application/x-www-form-urlencoded\r\n");
- wr.write("\r\n");
-
- wr.write(data);
- wr.flush();
-
- BufferedReader rd = new BufferedReader(new InputStreamReader(socket.getInputStream(),
- "UTF-8"));
- String line;
- while ((line = rd.readLine()) != null) {
- System.out.println(line);
- }
- wr.close();
- rd.close();
- } catch (Exception e) {
- }
- }
- }
运行结果
HTTP/1.1 200 OK
Date: Sun, 31 Aug 2008 00:39:46 GMT
Server: Apache/2.2.4 (Win32) mod_jk/1.2.26
Vary: Host,Accept-Encoding
Set-Cookie: JSESSIONID=2F417D101EEF54608D7115A109C4FC3C; Path=/
Content-Length: 333
Connection: close
Content-Type: text/html;charset=UTF-8
<!-- 测试页内容开始 -->
这里是JAVA世纪网,java2000.net。老紫竹欢迎你的光临。
本站以提供高质量的,验证过的JAVA代码,资料和项目为目标。
<!-- 测试页内容结束 -->
<!-- 提交来的数据开始-->
你好:老紫竹
欢迎光临JAVA世纪网
<!-- 提交来的数据结束-->
<script type="text/javascript">
</script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript">
</script>
分享到:
相关推荐
在Java编程语言中,使用Socket实现一个简单的HTTP服务器是一项基础但重要的技能。HTTP服务器是互联网上用于接收HTTP请求并返回响应的程序。本教程将详细解释如何通过Socket类来构建这样的服务器,同时会涉及到相关的...
综上所述,"http和WebService 调用接口Java代码demo"这个主题涵盖了Java通过HTTP进行接口调用的基本方法,以及Web Service的使用,特别是结合Spring Boot的场景。在实际项目中,理解并熟练运用这些技术能够帮助我们...
1. **Socket编程**:Java的`java.net.Socket`类和`java.net.ServerSocket`类是进行网络通信的基础。ServerSocket用于监听特定端口上的连接请求,而Socket则代表了客户端和服务器之间的连接。 2. **HTTP协议**:HTTP...
本文将深入探讨Android中基于Socket和HTTP的网络编程,包括它们的概念、实现方式以及如何构建一个完整的客户端代码。 1. Socket(套接字)网络编程: Socket是网络通信的基础,它提供了进程间通信的能力,使得运行...
在Java中,`java.net.Socket`和`java.net.ServerSocket`类用于创建客户端和服务器端的Socket连接。 2. **HTTP协议解析**:HTTP监听服务需要理解HTTP协议的请求和响应格式。这涉及到解析请求头、方法(GET、POST等)...
在这个场景中,我们关注的是两种常见的通信方式:HTTP和Socket。这两种方法都是Java中实现客户端-服务器交互的重要手段。 1. **HTTP连接**: HTTP(超文本传输协议)是互联网上应用最为广泛的一种网络协议,用于从...
- 一个简单的Java Web服务器通常会解析HTTP请求,根据请求的方法执行相应的操作(如读取静态资源或处理动态请求)。 - 服务器需要解析请求行,获取URL,然后根据路径找到对应的资源并返回响应。 4. **多线程处理*...
这涉及到Java的Socket编程或HttpURLConnection类。理解如何使用这些工具发起GET和POST请求,处理响应数据,以及处理cookies和session,对于理解BrowserTest的网络通信至关重要。 3. **HTML和CSS解析**:浏览器需要...
Java简单浏览器源代码是基于Java Swing库和Socket编程技术实现的一款基础浏览应用,它为开发者提供了一个学习和理解网络浏览器工作原理的实例。这个项目主要包含以下几个关键知识点: 1. **Java Swing**: Java ...
在Java中,我们通常通过JSSE(Java Secure Socket Extension)来支持SSL/TLS连接。 在`SSLClient.java`文件中,我们可能会看到配置SSL上下文(SSLContext)的过程。这是设置信任的证书和密钥存储的地方。代码可能...
4. 解析HTTP请求,根据请求方法(GET、POST等)执行相应的操作,如读取静态文件或执行动态逻辑。 5. 构建HTTP响应,包括状态码(如200表示成功,404表示未找到),响应头(如Content-Type)和响应体(如HTML页面内容...
Java开发工具代码库是Java程序员日常工作中不可或缺的资源集合,它包含了各种常用的功能模块和工具类,旨在提高开发效率,减少重复劳动。这个代码库通常会涵盖字符串处理、日期时间操作、集合操作、IO流、网络通信、...
5. 解析请求,获取HTTP方法(GET、POST等)、URL、HTTP版本和头部信息。 6. 根据请求执行相应的操作,如读取文件、执行业务逻辑等。 7. 创建一个OutputStream,向客户端的Socket发送HTTP响应。 8. 响应应包含HTTP...
本篇文章将详细介绍如何通过Java Socket来实现这个功能。 首先,了解HTTP POST的附件上传协议是至关重要的。HTTP附件上传遵循RFC1867协议,它扩展了HTML表单提交,允许用户通过`<input type="file">`选择本地文件...
// 在这里执行Java方法 return "Java方法返回结果"; } } ``` 在JavaScript中,使用Ajax来调用Servlet: ```javascript // JavaScript 示例 var xhr = new XMLHttpRequest(); xhr.open('POST', '/path/to/...
Java代码的浏览器源码整理是一项深入理解Web浏览技术与Java编程结合的重要学习资源。这个压缩包文件包含了关于如何下载和使用这些源码的说明,以及一个可能包含解压密码的URL链接,暗示了源码可能受到保护以防止未经...
3. HTTP解析:接收客户端的HTTP请求,解析请求头和请求体,识别HTTP方法(如GET、POST)和资源路径。 4. 响应生成:根据请求处理逻辑,生成HTTP响应,包括状态码、响应头和响应体。 5. 数据发送:通过`Socket`的输出...
- `SocketTest.jar`:程序的主要Java归档文件,包含了SocketTest的源代码和运行时需要的所有类。 - `SocketTest.sh`:Unix/Linux系统的脚本文件,用于启动SocketTest,可能是用Bash shell编写的。 5. **使用场景*...
2. 通过`serverSocket.accept()`方法监听并接受来自客户端的连接请求,这将返回一个新的Socket对象。 3. 同样,获取并使用这个新Socket的输入流和输出流进行通信。 4. 当不再需要连接时,关闭ServerSocket以及与之...
执行POST请求,获取响应实体并读取其内容。 9. **关闭资源**: ```java httpClient.getConnectionManager().shutdown(); ``` 关闭HTTP客户端的所有连接,释放资源。 #### 五、注意事项 - **安全性问题**:绕...