thinkPHP5.0框架API優(yōu)化后的友好性分析
本文實例講述了thinkPHP5.0框架API優(yōu)化后的友好性。分享給大家供大家參考,具體如下:
新版ThinkPHP針對API開發(fā)做了很多的優(yōu)化,并且不依賴原來的API模式擴展。
數(shù)據(jù)輸出
新版的控制器輸出采用Response
類統(tǒng)一處理,而不是直接在控制器中進(jìn)行輸出,通過設(shè)置default_return_type
或者動態(tài)設(shè)置不同類型的Response
輸出就可以自動進(jìn)行數(shù)據(jù)轉(zhuǎn)換處理,一般來說,你只需要在控制器中返回字符串或者數(shù)組即可,例如如果我們配置:
'default_return_type'=>'json'
那么下面的控制器方法返回值會自動轉(zhuǎn)換為json格式并返回。
namespace app\index\controller; class Index { public function index() { $data = ['name'=>'thinkphp','url'=>'thinkphp.cn']; return ['data'=>$data,'code'=>1,'message'=>'操作完成']; } }
訪問該請求URL地址后,最終可以在瀏覽器中看到輸出結(jié)果如下:
如果你需要返回其他的數(shù)據(jù)格式的話,控制器本身的代碼無需做任何改變。
支持明確指定輸出類型的方式輸出,例如下面指定JSON數(shù)據(jù)輸出:
namespace app\index\controller; class Index { public function index() { $data = ['name'=>'thinkphp','url'=>'thinkphp.cn']; // 指定json數(shù)據(jù)輸出 return json(['data'=>$data,'code'=>1,'message'=>'操作完成']); } }
或者指定輸出XML類型數(shù)據(jù):
namespace app\index\controller; class Index { public function index() { $data = ['name'=>'thinkphp','url'=>'thinkphp.cn']; // 指定xml數(shù)據(jù)輸出 return xml(['data'=>$data,'code'=>1,'message'=>'操作完成']); } }
核心支持的數(shù)據(jù)類型包括view、xml、json和jsonp,其他類型的需要自己擴展。
錯誤調(diào)試
由于API開發(fā)不方便在客戶端進(jìn)行開發(fā)調(diào)試,但ThinkPHP5的Trace調(diào)試功能支持Socket在內(nèi)的方式,可以實現(xiàn)遠(yuǎn)程的開發(fā)調(diào)試。
設(shè)置方式:
'app_trace' => true, 'trace' => [ 'type' => 'socket', // socket服務(wù)器 'host' => 'slog.thinkphp.cn', ],
然后安裝chrome瀏覽器插件后即可進(jìn)行遠(yuǎn)程調(diào)試,詳細(xì)參考調(diào)試部分。
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《Zend FrameWork框架入門教程》、《smarty模板入門基礎(chǔ)教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計有所幫助。
- Thinkphp 在api開發(fā)中異常返回依然是html的解決方式
- thinkphp5框架API token身份驗證功能示例
- ThinkPHP框架整合微信支付之JSAPI模式圖文詳解
- ThinkPHP實現(xiàn)微信支付(jsapi支付)流程教程詳解
- Thinkphp5框架ajax接口實現(xiàn)方法分析
- thinkPHP5框架接口寫法簡單示例
- ThinkPHP框架實現(xiàn)的微信支付接口開發(fā)完整示例
- thinkPHP框架實現(xiàn)的短信接口驗證碼功能示例
- thinkPHP微信分享接口JSSDK用法實例
- thinkPHP框架對接支付寶即時到賬接口回調(diào)操作示例
- ThinkPHP和UCenter接口沖突的解決方法
- thinkphp使用url請求調(diào)用ThinkApi天氣教程【圖文詳解】
相關(guān)文章
WordPress中制作導(dǎo)航菜單的PHP核心方法講解
這篇文章主要介紹了WordPress中制作導(dǎo)航菜單的PHP核心方法,即wp_get_nav_menu的相關(guān)參數(shù)的作用和用法,需要的朋友可以參考下2015-12-12Zend Framework處理Json數(shù)據(jù)方法詳解
這篇文章主要介紹了Zend Framework處理Json數(shù)據(jù)方法,結(jié)合實例形式分析了zend framework針對json相關(guān)操作類的使用方法,需要的朋友可以參考下2016-12-12PHP網(wǎng)頁游戲?qū)W習(xí)之Xnova(ogame)源碼解讀(十五)
這篇文章主要介紹了PHP網(wǎng)頁游戲Xnova(ogame)源碼解讀的艦隊活動頁面處理流程,需要的朋友可以參考下2014-06-06