rest是簡單的web api,可以利用rest使用http方法向url做出請求(get/post)
get 獲取資源
post 增加資源
put 替換資源
delete 刪除資源
1 標準檔案函式
file_get_contents()函式
fopen()
需要開啟allow_url_fopen 配置,一般預設都開啟了
2 curl 擴充套件
curl使用的四個步驟:
(1)初始化
curl_init()
(2)設定變數
curl_setopt() 。最為重要,一切玄妙均在此。有一長串curl引數可供設定,它們能指定url請求的各個細節。要一次性全部看完並理解可能比較困難,所以今天我們只試一下那些更常用也更有用的選項。
(3)執行並獲取結果
curl_exec()
(4)釋放curl控制代碼
curl_close()
3 pear 的http_request2類要包含乙個查詢字串變數的函式
需要使用http_bulid_query($arr);$arr是鍵值對
例如:
$var= ['pagesize'=>6,'search'=>'keyword'];
file_get_contents($url);
要獲取乙個受保護的頁面,需要提供賬號和密碼
例:使用者名稱是username,密碼是password
$url = '';
file_get_contents($url);
或者:
$c = curl_init('');
curl_setopt($c,curlopt_returntransfer,true);
curl_setopt($c,curlopt_userpwd,'username:password');
$page = curl_exec($c);
curl_close($c);
用post方法獲取url
使用http流時使用method和content流上下文選項
$url = '/submit.php';
// 提交的表單資料,編碼為查詢字串樣式
// 名-值對
$body = 『monkey=uncle$rhino=aunt』;
$options = array(『method』=>』post』,
『content』=>』body』,
// 建立流上下文
// 將上下文傳入file_get_contents($url,false,$context);
print file_get_contents($url,false,$context);
利用curl時,設定curlopt_post和curlopt_postfileds選項
$url = '/submit.php';
// 提交的表單資料,編碼為查詢字串樣式
// 名-值對
$body = 『monkey=uncle$rhino=aunt』;
$c = curl_init($url);
curl_setopt($c,curlopt_post,true);
curl_setopt($c,curl_postfileds,$body);
curl_setopt($c,curlopt_returntransfer,true);
$page = curl_exec($c);
curl_close($c);
用任意方法和post體獲取url
希望使用某個方法請求乙個url,如post,put或delete,post或put請求可能包含格式化資料,如json和xml
用http流設定method,header,content流上下文選項:
$url = 『
$body = 『[
『dish』:』chinkensoup』
『dish』:』chinkensoup2』
$options = array(
『method』=>』put』,
『header』=>$header,
『content』=>$body
// 建立流上下文
// 將上下文傳入file_get_contents($url,false,$context);
print file_get_contents($url,false,$context);
利用curl時,將curlopt_customrequest選項設定為方法名,如果要包含請求體,將curlopt_httpheader設定為content-type,另外將curlopt_postfields設定為請求體
$url = 『
$body = 『[
『dish』:』chinkensoup』
『dish』:』chinkensoup2』
$c = curl_init($url);
curl_setopt($c,curlopt_custormrequest,』put』);
curl_setopt($c,curlopt_postfields,$body);
curl_setopt($c,curlopt_returntransfer,true);
$page = curl_exec($c);
curl_close($c);
使用curl和put上傳檔案
用cookie獲取url
希望獲取乙個頁面,要求隨頁面請求傳送乙個cookie
使用curl時,可以使用curlopot_cookie選項:
$c = curl_init(『
curl_setopt($c,curlopt_cookie,』user=ellen;activity=swimming』);
curl_setopt($c,curlopt_returntransfer,true);
$page = curl_exec($c);
Restful API學習筆記
restful是網際網路軟體的架構原則。什麼是網際網路軟體的架構原則呢?網際網路軟體的架構原則就像mvc或者設計模式一樣,一種約定。就像我們日常生活中的,靠右行走,紅燈停綠燈行一樣。而restful就是對於伺服器資源之間互動的一種規定。restful是面向資源的一種準則。什麼是資源,網路上的所有事物...
RESTful API學習筆記
對於乙個web應用,通常可以分為前端和後端。由於前後端分離,需要有一種機制使前端後端能進行通訊,這就是api,前端通過呼叫api來獲得後端提供的服務。restful api是目前比較成熟的網際網路應用程式的api設計理論。roy thomas fielding首先提出rest的架構原則,全稱為rep...
RestfulApi 學習筆記 父子資源(四)
該系列前文提及到,要體現出資源的乙個結構,那麼如何體現出結構呢?比如說獲取emproyee,應該寫 api companies 1 emproyees,這樣可以體現其結構性。那麼這樣改如何設定呢?1.配置的路由為 route api companies employees 這樣companyid將會...