亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > PHP > 正文

PHP socket 模擬POST 請求實例代碼

2020-03-22 19:13:02
字體:
來源:轉載
供稿:網友
我們用到最多的模擬POST請求幾乎都是使用php curl來實現了,沒考慮到PHP socket也可以實現,今天看到朋友寫了一文章,下面我來給大家分享一下PHP socket模擬POST請求實例。以前模擬post請求俺都用PHP curl擴展實現來著,沒想過PHP socket也可以實現。最近翻了下相關資料才發現原來沒有那么高深,只是以前一直沒有完全理解post的原理和本質而已,其實就是發送給目的程序一個標志為post的協議串如下:
POST /目的程序url HTTP/1.1
Accept: 接收信息格式
Referer: url來路
Accept-Language: 接收語言
Content-Type: application/x-www-form-urlencoded
html' target='_blank'>Cookie: 網站cookie,不用俺過多解釋,對吧
User-Agent: 用戶代理,操作系統及版本、CPU 類型、瀏覽器及版本等信息
Host: 要發送到的主機地址
Content-Length: 發送數據的長度
Pragma: 本地是否存在緩存
Cache-Control: 是否需要網頁緩存
Connection: 連接狀態
username=fengdingbo&password=phpstudy.net //post發送的數據
我想大家對表單的post方法提交數據應該是最熟悉不過了,例如我們想把用戶名和密碼發送給某個頁面的時候,填寫好相應的input框,點擊提交按鈕,最后把這個表單發送到action程序的就是以上數據。知道了這一點我想就不難了
這時候我們只需要用php的socket打開一個端口,例如80端口,把以上信息利用這個端口發送給目的程序就行了。
我們如何在一個端口上建立一個socket通道呢?
在PHP中是如此簡單呢!
官方給的原型:
resource fsockopen ( string $hostname [, int $port = -1 [, int &$errno [, string &$errstr [, float $timeout = ini_get("default_socket_timeout") ]]]] )下邊是人類的理解:fsockopen(主機名稱,端口號,錯誤號的&變量,錯誤提示的&變量,超時時間)
主機名稱就是你需要發送數據的目的地;
端口號就是這個目的程序會在哪個端口等著你的數據;
錯誤號的&變量,這個是如果建立socket不成功的時候返回的錯誤編號;
錯誤提示的&變量,是錯誤的時候返回的錯誤提示信息;
超時時間,就是post數據之后如果對方沒有回應信息,等待的最長時間。
如果不出意外(你正確的設置fsockopen()函數的參數)的話,一個socket通道現在已經打開了,我們下一步需要做的就是,通過這個打開的通道把post請求協議發給目的程序,這時候可以使用fwrite或者fputs函數中的任意一個,把post的請求格式發給fsockopen()打開的資源句柄,這時候一個偉大的socket模擬的post請求就誕生了。
代碼如下 * SOCKET擴展函數 * @copyright (c) 2013 * @author Qiufeng fengdingbo@gmail.com * @link http://www.phpstudy.net * @version 1.0 * Post Request * @param string $url * @param array $data * @param string $referer * @return arrayif ( ! function_exists('socket_post')) function socket_post($url, $data, $referer='') if( ! is_array($data)) return; $data = http_build_query($data); $url = parse_url($url); if ( ! isset($url['scheme']) || $url['scheme'] != 'http') die('Error: Only HTTP request are supported !'); $host = $url['host']; $path = isset($url['path']) $url['path'] : '/'; // open a socket connection on port 80 - timeout: 30 sec $fp = fsockopen($host, 80, $errno, $errstr, 30); if ($fp) // send the request headers: $length = strlen($data); $POST = HEADERPOST {$path} HTTP/1.1Accept: text/plain, text/htmlReferer: {$referer}Accept-Language: zh-CN,zh;q=0.8Content-Type: application/x-www-form-urlencodem Cookie: token=value; pub_cookietime=2592000; pub_sauth1=value; pub_sauth2=valueUser-Agent: Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17Host: {$host}Content-Length: {$length}Pragma: no-cacheCache-Control: no-cacheConnection: closern{$data}HEADER; fwrite($fp, $POST); $result = ''; while(!feof($fp)) // receive the results of the request $result .= fread($fp, 512); else return array( 'status' = 'error', 'error' = "$errstr ($errno)" // close the socket connection: fclose($fp); // split the result header from the content $result = explode("rnrn", $result, 2); // return as structured array: return array( 'status' = 'ok', 'header' = isset($result[0]) $result[0] : '', 'content' = isset($result[1]) $result[1] : ''print_r(socket_post('http://www.phpstudy.net/', array('name='= 'qiufeng','password'= md5('www.phpstudy.net'))));/* e.g: socket_post('http://www.phpstudy.net', array('name='= 'qiufeng','password'= md5('phpstudy.net'))); *//* End of file socket_helper.php */實際上,當socket通道打開時,我們傳的COOKIE是正確的話,(截圖運行的php代碼來自上邊,運行后返回的網頁出現了我的用戶名,說明對方網站已經承認我已經登錄了)咱就可以干N多事情,比如刷帖,刷回復等,你們懂的,對吧?

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲黄页视频免费观看| 欧美成人性色生活仑片| 亚洲国产日韩欧美综合久久| 亚洲欧美日韩一区二区三区在线| 成人午夜小视频| 欧美激情国产日韩精品一区18| 国产69久久精品成人看| 九九精品视频在线| 久久在线观看视频| 综合激情国产一区| 亚洲毛茸茸少妇高潮呻吟| 久久频这里精品99香蕉| 秋霞成人午夜鲁丝一区二区三区| 欧美另类暴力丝袜| 国产视频精品一区二区三区| 久久久黄色av| 国产精品久久久久福利| 亚洲欧美国产一本综合首页| 欧美视频在线观看 亚洲欧| 亚洲精品日韩久久久| 理论片在线不卡免费观看| 国产精品免费在线免费| 亚洲成人精品久久久| 97婷婷大伊香蕉精品视频| 久久91亚洲精品中文字幕奶水| 日韩在线激情视频| 日韩综合视频在线观看| 97视频在线播放| 欧美性感美女h网站在线观看免费| 色综合色综合网色综合| 日韩激情视频在线| 欧美精品九九久久| 少妇av一区二区三区| 国产精品99久久久久久久久久久久| 精品成人av一区| 亚洲少妇激情视频| 亚洲美腿欧美激情另类| 91热精品视频| 国产精品成人国产乱一区| 国产精品偷伦免费视频观看的| 国模叶桐国产精品一区| 中文字幕亚洲综合| 久久久免费av| 国产精品成人一区二区| 高清欧美性猛交xxxx黑人猛交| 国产97在线观看| 国产视频精品在线| 永久555www成人免费| 性色av一区二区三区在线观看| 91在线免费观看网站| 黄色成人在线免费| xxx欧美精品| 欧美国产第一页| 热门国产精品亚洲第一区在线| 欧美性猛交xxxx黑人猛交| 久久久国产精品视频| 亚洲小视频在线| 亚洲丝袜在线视频| 欧美激情在线狂野欧美精品| 欧美激情在线有限公司| 欧美精品videosex极品1| 97超碰国产精品女人人人爽| 欧美日本在线视频中文字字幕| 日韩中文字幕av| 欧美一区二区三区免费观看| 色多多国产成人永久免费网站| 国产成人午夜视频网址| 久久久久免费精品国产| 国产精品在线看| 97超级碰在线看视频免费在线看| 国内精品久久久久久久| 国产日韩一区在线| 国产精品成人在线| 国产精品美女网站| 成人中文字幕+乱码+中文字幕| 欧美亚洲国产视频小说| 亚洲成人国产精品| 精品呦交小u女在线| 亚洲一区二区三区久久| 日韩成人中文字幕| 国产成人精品综合久久久| 欧美性猛交xxxx免费看| 91精品视频专区| 日韩精品高清视频| 国产91在线视频| 国产精品欧美一区二区三区奶水| 911国产网站尤物在线观看| 国产精品极品尤物在线观看| 国产成人+综合亚洲+天堂| 亚洲毛片在线免费观看| 久久久久久久久国产精品| 欧美视频在线观看 亚洲欧| 免费91麻豆精品国产自产在线观看| 欧美激情一区二区三区成人| 国产精品福利在线观看| xvideos亚洲| 色狠狠久久aa北条麻妃| 亚洲美女在线视频| 亚洲日韩欧美视频一区| 久久精品国产91精品亚洲| 久久久亚洲天堂| 欧美色视频日本版| 日韩av综合中文字幕| 午夜剧场成人观在线视频免费观看| 亚洲一区二区三区乱码aⅴ| 亚洲欧美成人一区二区在线电影| 国产欧美一区二区| 久久精品视频一| 91亚洲人电影| 国产美女久久精品| 538国产精品一区二区免费视频| 91久久精品视频| 庆余年2免费日韩剧观看大牛| 亚洲精品美女在线| 亚洲欧美一区二区三区情侣bbw| 日韩大陆毛片av| 最近2019年好看中文字幕视频| 亚洲综合成人婷婷小说| 日韩免费观看在线观看| 2019亚洲男人天堂| 欧美激情一区二区久久久| 亚洲国产精品99久久| 国内精品视频久久| 国产九九精品视频| 亚洲精品国产精品乱码不99按摩| 亚洲午夜小视频| 97av在线影院| 日韩国产欧美区| 国产亚洲精品成人av久久ww| 国产一区二区三区视频免费| 欧美日韩成人网| 国产精品伦子伦免费视频| 欧美高清一级大片| 亚洲成色777777在线观看影院| 国产精品久久久av久久久| 国产精品自拍偷拍视频| 国产精品视频中文字幕91| 欧美丝袜美女中出在线| 91精品国产高清久久久久久| 亚洲电影免费观看高清完整版| 欧美黄网免费在线观看| 国产狼人综合免费视频| www.欧美精品一二三区| 91精品国产91久久久久久不卡| 国产精品jvid在线观看蜜臀| 2019中文字幕全在线观看| 久久视频免费在线播放| 激情懂色av一区av二区av| 久久天天躁狠狠躁夜夜躁2014| 国产亚洲欧美视频| 91视频88av| 在线看欧美日韩| 亚洲一区二区三区久久| 一区二区亚洲精品国产| 久久影院资源网| 亚洲国产日韩精品在线| 亚洲综合在线播放| 久久精品国产2020观看福利| 超碰日本道色综合久久综合| 97在线看福利| 久久婷婷国产麻豆91天堂| 国产综合在线看| 精品国产乱码久久久久酒店| 亚洲精品电影在线|