socket 模擬POST傳送資料

2021-06-16 21:25:12 字數 1540 閱讀 7557

筆者之前使用過mfc的cinternetsession來模擬post傳送資料,但一直在想,mfc中的類都是經過封裝的,如果我自己通過最原始的socket傳送資料是不是可行呢?所以經過一

早上的努力,還是成功了,說明這也不難哈。我先說說自己的過程吧:

首先要構造自己的http頭部,那麼首先要看標準的http是怎樣的,怎麼看呢,當然是抓包了

好了,看到我們的http標準頭部,接下來我們就可以構造自己的了http頭部了,我們可以通過多執行緒,來不停的更改username和password來達到曼麗破解**後台的目的,現

在來看下源**,其實我們要做的操作就是使用socket與目標主機建立連線,然後呢就是傳送上述http頭部,最後等待返回就是了

// socket_post.cpp : 定義控制台應用程式的入口點。

//#include "stdafx.h"

#include

#include

#pragma comment(lib,"ws2_32.lib")

using namespace std;

int _tmain(int argc, _tchar* argv)

; socket sserver=0;

socket sclient=0;

sockaddr_in addrserver=;

char recvbuf[1024]=;

//初始化程式設計環境

wsastartup(makeword(2,2),&data);

//建立套接字

sserver=socket(af_inet,sock_stream,ipproto_tcp);

if(invalid_socket==sserver)

//填寫伺服器位址

addrserver.sin_family=af_inet;

addrserver.sin_port=htons(80);

addrserver.sin_addr.s_un.s_addr=inet_addr("***.***.***.***");

//向伺服器發起連線

int errcode=connect(sserver,(sockaddr*)&addrserver,sizeof(addrserver));

if(socket_error==errcode)

bool issend=false;

while(1)

issend=true;

} //迴圈接收資料

errcode=recv(sserver,recvbuf,1024,0);

if(socket_error==errcode)

if(strlen(recvbuf)!=0)

{ cout經過筆者測試這段**可用,當然,你得換成自己的

注意:在cookie:dsdadads資料的末尾要加上兩個\r\n,因為國定http頭部要與傳送的內容區分開來!!

curl模擬傳送post請求

curl模擬傳送post請求 初始化 curl curl init 設定抓取的url curl setopt curl,curlopt url,設定標頭檔案的資訊作為資料流輸出 curl setopt curl,curlopt header,1 設定獲取的資訊以檔案流的形式返回,而不是直接輸出。cu...

Fiddler模擬傳送post請求

fiddler在進行介面測試時,會模擬post請求,傳送不同的請求引數,返回不同的結果,今天我們就來分享一下,怎麼用fiddler工具模擬post請求 開啟fiddler工具,在右側點選 composer 的選項 進入到了composer 的選項之後,在parsed中進行根據http傳送的請求進行選...

用JAVA模擬POST傳送資料

伺服器 1.jsp 客戶端 首先建立乙個到伺服器http的請求 httprequest request new httprequest http 伺服器 1.jsp 第一次使用的是get方式 request.setmethod get 緊接著進行一些請求的屬性設定 request.setreques...