目标:通过socket 模拟HTTP协议连接 tomcat,做一次GET请求
HTTP 协议的格式:
request: GET /index.jsp?username=xinchun.wang&password=123456 HTTP/1.1 Host:192.168.237.230 Connection: close response: HTTP/1.1 200 OK Server: Apache-Coyote/1.1 Set-Cookie: JSESSIONID=2D3FE2C8EA372E3ACC69C48E12348B44; Path=/ Content-Type: text/html;charset=ISO-8859-1 Content-Length: 288 Date: Tue, 25 Apr 2017 03:06:57 GMT Connection: close <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Insert title here</title> </head> <body> xinchun.wang 123456 </body> </html>
代码参考:
public class ClientGet { public static void main(String[] args) { sendRequest(8078); } public static void sendRequest(int port) { try { Socket socket = new Socket("192.168.237.230", port); OutputStream out = socket.getOutputStream(); // 由Socket对象得到输入流,并构造相应的BufferedReader对象 BufferedReader in = new BufferedReader(new InputStreamReader(socket .getInputStream())); StringBuilder sb = new StringBuilder(); sb.append("GET /index.jsp?username=xinchun.wang&password=123456 HTTP/1.1\r\n"); sb.append("Host:192.168.237.230\r\n"); sb.append("Connection: close\r\n"); sb.append("\r\n"); out.write(sb.toString().getBytes()); out.flush(); String line = in.readLine(); while(line != null && line.toString() != ""){ System.out.println(line); line = in.readLine(); } out.close(); // 关闭Socket输出流 in.close(); // 关闭Socket输入流 socket.close(); // 关闭Socket } catch (Exception e) { System.out.println("Error. " + e); } } }
相关推荐
2 I run the two py file code in two machines,first, you should get to know the ip address of server machine, and replace the HOST constant with your own server ip, then type message firstly on ...
用法import { createClient } from 'reactotron-core-client'// setup a reactotron clientconst client = createClient ( { // injected in for compatibility createSocket : path => new WebSocket ( path ) , ...
生成 HTTP GET 和 POST 请求 读取HTTP响应 将 HTTP 响应负载保存到本地文件 ======== 测试网站 数据格式:名称=str str 可以是任何字符串(例如 str=Wei) 通过 HTTP GET 和 POST 将数据传送到此 URL
socketcluster-client-go 请参阅示例以获取更多详细信息:概述该客户端提供以下功能易于安装和使用支持发出和收听远程事件发布/订阅验证(JWT) 可用于测试所有服务器端功能安装使用 go get github....
Socket.IO 客户端++ 用于基于和的 C++ 客户端。 该库能够连接到 Socket.IO 服务器,然后发送和接收消息。 这个项目在 Socket.IO 0.8 之后没有...client::connection_ptr con = endpoint.get_connection(handler->per
smart-http 是一款可编程的 Http 应用微内核,基于smart-socket实现的轻量级http服务器,方便用户根据自身需求进行 Server 或 Client 的应用开发。支持GET、POST的 HTTP 请求。提供了 URL 路由组件,可以快速搭建...
// create a copy, so $clients doesn't get modified by socket_select() $read = $clients ; // get a list of all the clients that have data to be read from // if there are no clients with data, go ...
my $sock = IO::Socket::INET->new( PeerAddr => '127.0.0.1', PeerPort => $port, ) or die $!; my $client = FCGI::Client::Connection->new( sock => $sock ); my ( $stdout, $stderr ) = $client->request( +...
HP-Socket 是一套通用的高性能 TCP/UDP/HTTP 通信框架,包含服务端组件、客户端组件和Agent组件,广泛适用于各种不同应用场景的 TCP/UDP/HTTP 通信系统...TestEcho-Http-Serve-bigfile.e 改名为 TestEcho-Http-Serve.
apt-get isntall mysql-client sudo apt-get install libmysqlclient-dev 安装过程中会提示设置密码什么的,注意设置了不要忘了,安装完成之后可以使用如下命令来检查是否安装成功: sudo netstat -tap | grep ...
#描述这是一个用于 HTTP 客户端和服务器的简单 java Socket 程序HTTP 服务器使用自定义端口(例如 8080)为客户端提供服务,当客户端请求与服务器连接时,服务器则接受客户端的连接并等待 HTTP 请求头我只针对...
socket := gowebsocket . New ( "ws://echo.websocket.org/" ) 重要说明:websocket服务器的url必须使用ws或wss指定。 连接到服务器 对于连接到服务器: //This will send websocket handshake
关于该项目 该项目实现了Whatsapp消息的自动化。 主项目文件是gateway.js ,它将侦听http和socket.io事件,并将触发使用无服务浏览器(puppeter)构建的whatsapp机器人... const io = require ( "socket.io-client" )
You’ll even get to grips with network monitoring and implementing security best practices. By the end of this book, you’ll have experience of working with client-server applications, and be able to...
--no-http-keep-alive disable HTTP keep-alive (persistent connections). --no-cookies don't use cookies. --load-cookies=FILE load cookies from FILE before session. --save-cookies=FILE save ...
Socket简单通讯 //声明将要用到的类 private IPEndPoint ServerInfo;//存放服务器的IP和端口信息 private Socket ... this.ClientList.Items.Add("服务于 " + DateTime.Now.ToString() + " 开始运行."); }
即时聊天应用描述在Node js和socket.io的帮助下使用HTML和javascript制作的实时聊天应用程序预习运行程序$ git clone https://github.com/zaidajani/live-chat-app.git# Copy the project$ cd live-chat-app# Get ...
.\Samples\delphi\SocketDemos Delphi Win32/Win64 Socket sample applications (all Delphi versions) .\Samples\delphi\sslinternet Delphi Win32/Win64 SSL-enabled sample applications (all Delphi versions) ....
GoLang 实现的TCP Socket 客户端 ,模拟与服务器通信的例子
echo$client->getCharset(), "\r\n"; echo$client->getTimeout(), "\r\n"; ?> -------------------------------------------------- --------------------------------------------------- ------------------...