TRR 立志做最簡(jiǎn)單、易上手合瓢、易擴(kuò)展坦胶、易維護(hù)的TP反射注釋路由架構(gòu)

簡(jiǎn)介

TRR 開源地址

Github: https://github.com/china-wangyu/TRR

Gitee: https://gitee.com/china_wangyu/TRR

TRR 是什么?

TRR 是` ThinkPHP51 Reflection Restful API`(注:API設(shè)計(jì)風(fēng)格) 的字母第一個(gè)字符大寫后拼接而來,

從`ThinkPHP51 Reflection Restful API`全稱可以看出來顿苇,

這套接口框架設(shè)計(jì)主要圍繞`反射`來做`Restful API接口設(shè)計(jì)`的峭咒。

TRR 可以做什么?

1. 你可以先了解一下`ThinkPHP5.1`能做什么纪岁。

2. `ThinkPHP5.1` 能做的都能做凑队,而且在反射路由方面,我們比`ThinkPHP5.1`更為專注

專注做什么:

* 反射 API 接口路由

* 反射 API 接口文檔生成

* 反射 API 參數(shù)快速驗(yàn)證

* 讓接口開發(fā)更簡(jiǎn)單幔翰、直觀顽决、迅捷

* 讓接口維護(hù)更輕松、明了导匣、快速

我們專注研究PHP反射相關(guān)的知識(shí)點(diǎn)才菠,想讓`PHP` `web`功能開發(fā)、接口開發(fā)更加簡(jiǎn)單贡定、迅捷赋访。

想讓更多的朋友更加專注于業(yè)務(wù)開發(fā),不再反復(fù)去做路由添加缓待、修改蚓耽,接口文檔編寫等一些列的問題

我們只想你的項(xiàng)目更快、更穩(wěn)定旋炒、更以維護(hù)的成型步悠。

使用須知

在使用TRR時(shí)必定會(huì)用到的技能,你得做一個(gè)評(píng)估瘫镇,查看自己是否可以無障礙使用鼎兽。

涉及技術(shù)或框架

* ` PHP7.1 ` 一種支持熱編譯的腳本語言

? ? 你需要熟練掌握` PHP7.1 `相關(guān)知識(shí)點(diǎn),如果你精通此技能那就再好不過了铣除,不精通也沒關(guān)系谚咬,請(qǐng)根據(jù)我收集的教程和資料進(jìn)行學(xué)習(xí)


? ? - `PHP` 官方文檔: [https://php.net/manual/zh/](https://php.net/manual/zh/)

? ? - 【極客學(xué)院】PHP全套教學(xué)視頻: [https://www.bilibili.com/video/av10274152?from=search&seid=2228250606023131784](https://www.bilibili.com/video/av10274152?from=search&seid=2228250606023131784)

? ? - 韓順平php從入門到精通:? https://pan.baidu.com/s/1YDQoLodysxCP4rAyyTgD_Q 提取碼: 6hyy



* `ThinkPHP5.1` :中國比較流行且會(huì)一直流行的PHP框架


? ? 如果你對(duì)`ThinkPHP5.1`不太了解,或者一知半解尚粘,請(qǐng)到官方文檔進(jìn)行查閱择卦,補(bǔ)充效果知識(shí)點(diǎn)。

? ? [官方文檔](https://www.kancloud.cn/manual/thinkphp5_1/content)

* `Reflection` PHP 反射機(jī)制

? ? 如果你對(duì) PHP 反射相關(guān)知識(shí)點(diǎn)不是很了解郎嫁,推薦先進(jìn)行了解一下


? ? - `PHP`官方文檔: [https://php.net/manual/zh/book.reflection.php](https://php.net/manual/zh/book.reflection.php)

? ? - `ThinkPHP5.1` 反射相關(guān)知識(shí)點(diǎn): [https://www.kancloud.cn/manual/thinkphp5_1/469333](https://www.kancloud.cn/manual/thinkphp5_1/469333)

? ? - `wangyu/reflex-core composer`擴(kuò)展使用: [https://github.com/china-wangyu/php-reflex-core](https://github.com/china-wangyu/php-reflex-core)

* `Restful API` 是一種API接口設(shè)計(jì)風(fēng)格或者說潮流

? ? 如果你對(duì) `Restful API` 還不了解秉继,我收集了一些比較好的譯文。


? ? -` RESTful `架構(gòu)風(fēng)格概述: [https://juejin.im/entry/57c7a323a633bd006cfc1d84](https://juejin.im/entry/57c7a323a633bd006cfc1d84)

? ? - `Restful API PHP`的學(xué)習(xí)視頻: [https://www.imooc.com/learn/811](https://www.imooc.com/learn/811)

* `Composer` 是`php`最為流行和使用最多的第三方擴(kuò)展庫


? ? > 推薦使用 阿里云`composer`鏡像源 1分鐘內(nèi)快速同步泽铛,穩(wěn)定可靠

? ? 如果你對(duì) `Composer` 了解不夠尚辑,請(qǐng)仔細(xì)閱讀我收集的一些資料。


? ? - `composer` 入門中文文檔: [https://docs.phpcomposer.com/](https://docs.phpcomposer.com/)

? ? - `composer` 安裝文檔: [https://packagist.laravel-china.org/](https://packagist.laravel-china.org/)

? ? - `composer` 更換國內(nèi)源: [https://segmentfault.com/a/1190000019651993](https://segmentfault.com/a/1190000019651993)

到此厚宰,相信你對(duì)TRR有了一定的了解了腌巾,對(duì)TRR項(xiàng)目需要用到的技術(shù)有個(gè)清晰的了解遂填,如果你還是不太清楚,請(qǐng)繼續(xù)在網(wǎng)上尋找資源學(xué)習(xí)吧澈蝙,

加油吓坚,明天會(huì)更美麗。

快速開始

在你項(xiàng)目文件夾內(nèi),點(diǎn)擊鼠標(biāo)右鍵 打開 `git Bash Here`

在 `git bash` 命令行里使用以下命令

?1. 檢查服務(wù)端必備環(huán)境

* 安裝`PHP`環(huán)境(version: `7.1` 及以上)

* 安裝`Git`環(huán)境(version: `1.8` 及以上)

* 安裝`Composer`環(huán)境(version: `1.8` 及以上)

?2. 獲取項(xiàng)目源碼

獲取項(xiàng)目源碼

git clone https://github.com/china-wangyu/TRR.git

在進(jìn)入項(xiàng)目目錄

cd TRR

3. 安裝項(xiàng)目依賴

安裝依賴

composer install

### 4. 運(yùn)行項(xiàng)目

為了防止PHP各種集成和非集成軟件環(huán)境問題灯荧,本項(xiàng)目開發(fā)期間希望各位使用 `ThinkPHP5.1`內(nèi)置服務(wù)

有關(guān)文檔: [https://www.kancloud.cn/manual/thinkphp5_1/518750](https://www.kancloud.cn/manual/thinkphp5_1/518750)

php think run -H 127.0.0.1 -p 8000

效果如下礁击,就代表你啟動(dòng)內(nèi)置服務(wù)成功了


# F:\project\open-source-object\Trr\2019-7-6\TRR [master? +0 ~217 -0 !]

# λ? php think run -H 127.0.0.1 -p 8000

# ThinkPHP Development server is started On <http://127.0.0.1:8000/>

# You can exit with `CTRL-C`

# Document root is: F:\project\open-source-object\Trr\2019-7-6\TRR\public

### 5. 瀏覽器訪問

訪問地址: http://127.0.0.1:8000/

## 其他功能

### 創(chuàng)建 `JWT` 的 `Token`

route: `http://127.0.0.1:8000/auth?name=trr&password=trr`

method: `post`

返回效果:

{

? ? "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJUUlIiLCJpYXQiOjE1NjI0MDk2MDgsImV4cCI6MTU2MjQxNjgwOCwidXVpZCI6MTAwLCJzaWduYXR1cmUiOiJ0cnIifQ.MXXGcK2xjAznzcC-PQ66dRAo30Wn1poNLCNbFcO7ORA",

? ? "refresh_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJUUlIiLCJpYXQiOjE1NjI0MDk2MDgsInV1aWQiOjEwMCwic2lnbmF0dXJlIjoidHJyIn0.RBs5iOSTjC89Z6H4CPl9tNyXHOhtmuPQPd7JOB_n5JY"

}


### 刷新 `JWT` 的 `Token`

route: `http://127.0.0.1:8000/auth/refresh`

method: `get`

header: 需要設(shè)置:`authorization`

返回效果:

{

? ? "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJUUlIiLCJpYXQiOjE1NjI0MTE0OTMsImV4cCI6MTU2MjQxODY5MywidXVpZCI6MTAwLCJzaWduYXR1cmUiOiJ0cnIifQ.4siwrzghm-r_SZNz-SUwkI3Of-9Hx9vOHMYdHXjf7rA"

}

### 生成 `markdown` 格式的 `API` 文檔

- 命令行生成

? ? 在項(xiàng)目根目錄下打開 `cmd` 或 `終端` 輸入以下命令


? ? php think trr:build


? ? 效果如下,代表文檔生成成功:



? ? F:\project\open-source-object\Trr\2019-7-6\TRR [master ≡ +0 ~217 -0 !]

? ? λ? php think trr:build

? ? Successful. Output Document Successful . File Path :api-md.md


- 使用 `WangYu/Doc` 類生成文檔

? 實(shí)現(xiàn)代碼如下:

? <?php

? namespace app\index\controller;


? class Index

? ? {


? ? ? ? // 創(chuàng)建 API Markdown 文檔

? ? ? ? public function build()

? ? ? ? {

? ? ? ? ? ? $doc = new \WangYu\Doc('api 模塊','生成的API文檔名稱');

? ? ? ? ? ? $doc->execute();

? ? ? ? }

? }


? 訪問`Index`類下的`build`方法逗载,就會(huì)在`項(xiàng)目根目錄`創(chuàng)建你的API文檔了?

## 維護(hù)與提問

### 更新

由于目前TRR目前還處在不斷迭代更新階段哆窿,TP5.1版本也在持續(xù)跟進(jìn),所以本課程的內(nèi)容也會(huì)隨著適配的進(jìn)度而增加或者調(diào)整厉斟。

### 完善

局限于個(gè)人技術(shù)水平和寫作能力挚躯,如果教程中有哪些地方讀者覺得不對(duì)或者看不懂需要再講仔細(xì)些可以隨時(shí)提出。

### 催更擦秽、提問

讀者對(duì)本教程或者GitHub項(xiàng)目有任何疑問码荔、建議都可以在作者GitHub倉庫提個(gè)[issues](https://github.com/china-wangyu/TRR/issues)?

### 交流

加【TRR 官方群】QQ群: `860613750`


## 版權(quán)信息

TRR 遵循 MIT 開源協(xié)議發(fā)布,并提供免費(fèi)使用感挥。

本項(xiàng)目包含的第三方源碼和二進(jìn)制文件之版權(quán)信息另行標(biāo)注缩搅。

版權(quán)所有Copyright ? 2006-2019 by TRR

All rights reserved。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末触幼,一起剝皮案震驚了整個(gè)濱河市硼瓣,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌置谦,老刑警劉巖堂鲤,帶你破解...
    沈念sama閱讀 210,914評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異霉祸,居然都是意外死亡筑累,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評(píng)論 2 383
  • 文/潘曉璐 我一進(jìn)店門丝蹭,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人坪蚁,你說我怎么就攤上這事奔穿。” “怎么了敏晤?”我有些...
    開封第一講書人閱讀 156,531評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵贱田,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我嘴脾,道長(zhǎng)男摧,這世上最難降的妖魔是什么蔬墩? 我笑而不...
    開封第一講書人閱讀 56,309評(píng)論 1 282
  • 正文 為了忘掉前任,我火速辦了婚禮耗拓,結(jié)果婚禮上拇颅,老公的妹妹穿的比我還像新娘。我一直安慰自己乔询,他們只是感情好樟插,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,381評(píng)論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著竿刁,像睡著了一般黄锤。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上食拜,一...
    開封第一講書人閱讀 49,730評(píng)論 1 289
  • 那天鸵熟,我揣著相機(jī)與錄音,去河邊找鬼负甸。 笑死流强,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的惑惶。 我是一名探鬼主播煮盼,決...
    沈念sama閱讀 38,882評(píng)論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼带污!你這毒婦竟也來了僵控?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,643評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤鱼冀,失蹤者是張志新(化名)和其女友劉穎报破,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體千绪,經(jīng)...
    沈念sama閱讀 44,095評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡充易,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,448評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了荸型。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片盹靴。...
    茶點(diǎn)故事閱讀 38,566評(píng)論 1 339
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖瑞妇,靈堂內(nèi)的尸體忽然破棺而出稿静,到底是詐尸還是另有隱情,我是刑警寧澤辕狰,帶...
    沈念sama閱讀 34,253評(píng)論 4 328
  • 正文 年R本政府宣布改备,位于F島的核電站,受9級(jí)特大地震影響蔓倍,放射性物質(zhì)發(fā)生泄漏悬钳。R本人自食惡果不足惜盐捷,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,829評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望默勾。 院中可真熱鬧碉渡,春花似錦、人聲如沸灾测。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽锣吼。三九已至,卻和暖如春胧华,著一層夾襖步出監(jiān)牢的瞬間秦爆,已是汗流浹背序愚。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評(píng)論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留等限,地道東北人爸吮。 一個(gè)月前我還...
    沈念sama閱讀 46,248評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像望门,于是被迫代替她去往敵國和親形娇。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,440評(píng)論 2 348