<?php
// 建立連線
$link = fsockopen('localhost', '80');
define('crlf', "\r\n");
// 請求行
$request_data = 'get /'.crlf;
// 請求頭
$request_data .= 'host: localhost'.crlf;
$request_data .= 'user-agent: mozilla/5.0 (windows nt 6.1; win64; x64; rv:51.0) gecko/20100101 firefox/51.0'.crlf;
$request_data .= 'accept-language: zh-cn,zh;q=0.8,en-us;q=0.5,en;q=0.3'.crlf;
$request_data .= 'accept-encoding: gzip, deflate, br'.crlf;
$request_data .= 'cookie: 123'.crlf;
$request_data .= 'connection: keep-alive'.crlf;
$request_data .= 'upgrade-insecure-requests: 1'.crlf;
// 空行表示請求頭結束
$request_data .= crlf;
fwrite($link, $request_data);
//feof:(end of file)用於檢測是否到到資料流末尾
while (!feof($link))
fclose($link);
開啟 php_curl.dll 拓展
<?php
// 建立連線
$curl = curl_init();
//設定
$url = 'localhost';
curl_setopt($curl, curlopt_url, $url);
//傳送
var_dump(curl_exec($curl));
//關閉
curl_close($curl);
<?php
// 建立連線
$curl = curl_init();
//設定
$url = 'localhost';
curl_setopt($curl, curlopt_url, $url);
# 設定開啟post請求
curl_setopt($curl, curlopt_post, $url);
$post_data = array(
'user_name' => 'admin',
'user_pwd' => '123456'
);curl_setopt($curl, curlopt_postfields, $post_data);
//傳送
var_dump(curl_exec($curl));
//關閉
curl_close($curl);
curlopt_returntransfer:是將響應直接輸出,還是以返回值的形式處理
以返回值的形式處理響應資料:curl_setopt($curl, curlopt_returntransfer, true);
post 資料使用檔案位址,前使用 @標誌為檔案而不是字串
curlopt_cookiefile:是否傳送 cookie
curlopt_cookiejar:指定儲存伺服器所設定的 cookie 變數儲存位置
curl_setopt($curl, curlopt_cookiefile, true);
curl_setopt($curl, curlopt_header, 'c:/cookie.txt');
curlopt_header:是否獲取響應頭資料
獲取響應頭資料:curl_setopt($curl, curlopt_header, true);
header() 函式
:header('content-type:image/jpeg');
,header('content-type:image/png');
等
編碼:header("content-type:text/html; charset=utf-8");
任何的輸出,都是響應主體。(echo,print,var_dump,php 標籤之外的所有 html **)
header('expires:' . gmdate('d, d m y h:i:s', time()+5) . 'gmt');
expires:有效期(gmt:格林威治時間)
gmdate() 將時間戳格式化為格林威治平時
<?php
header('expires: ' . gmdate('d, d m y h:i:s', time()+5) . ' gmt');
echo time(), "self";
//basename獲取乙個位址中的名字部分(最後乙個斜槓之後)
header('content-disposition: attachment;filename=' . basename($file));
$finfo = new finfo(fileinfo_mime_type);
$mime = $finfo->file($file);
header('content-type: ' . $mime);
header('content-length: ' . filesize($file));
//b 二進位制模式,用於相容處理文字與二進位制檔案
$mode = 'rb';
$handle = fopen($file, $mode);
while(!feof($handle))
fclose($handle);
header() 函式前不能存在任何的輸出內容
header() 函式後邊的**也會照常執行
public function goto($url)
public function info($url, $info, $wait = 3)
public function success($url, $wait = 3)
public function error($url, $wait = 3)
請求和響應
1 response物件的字元輸入流在編碼時候,採用的是iso 8859 1的編碼表 在httpservletresponse介面中,有setcharacterencoding utf 8 方法來設定字元編碼 2 瀏覽器的解碼方式是gb2312,而我們使用的編碼是 utf 8 因此亂碼。sethea...
請求和響應
如果你正在做基於rest的web服務,你最好忽略request.post和request.get rest framework的request類擴充套件了標準的httprequest,新增對rest framework的靈活請求解析和請求身份驗證的支援。rest framework的請求物件提供靈活...
請求和響應
post方式請求 request.setcharacterencoding utf 8 response.setcontenttype text html charset utf 8 get方式請求 get方式請求的正文是在位址列中,在tomcat8.5版本以後,tomacat伺服器已經幫我們解決了...