您好,登錄后才能下訂單哦!
這篇文章主要介紹“如何用FastAdmin插件添加API接口”,在日常操作中,相信很多人在如何用FastAdmin插件添加API接口問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”如何用FastAdmin插件添加API接口”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
\addons\guestbook\controller
目錄下建立api
目錄(若插件只有api控制器,可以不建立,api目錄名稱自定義,此處以api
為目錄名舉例。)。
api
目錄內,建立Base.php
基類文件:
// api基類 /addons/guestbook/controller/api/Base.php 文件 <?php namespace addons\guestbook\controller\api; use app\common\controller\Api; use app\common\library\Auth; use think\Lang; /** * api基類 */ class Base extends Api { protected $noNeedLogin = [];// 無需登錄即可訪問的方法,同時也無需鑒權了 protected $noNeedRight = ['*'];// 無需鑒權即可訪問的方法 public function _initialize() { parent::_initialize(); // 載入語言包、初始化Auth等 //這里手動載入語言包 Lang::load(ROOT_PATH . '/addons/guestbook/lang/zh-cn.php'); } }
api
目錄建立接口類,此處以留言板
的接口為例
// 留言接口類,可供小程序、app等使用 /addons/guestbook/controller/api/Guestbook.php 文件 <?php namespace addons\guestbook\controller\api; use think\Validate; class Guestbook extends Base { protected $noNeedLogin = ['msglog']; /* * 記錄留言接口 * 本接口URL:http://您的域名/addons/guestbook/api.guestbook/index */ public function msglog() { if ($this->request->isPost()) { $contact = $this->request->post('contact'); $title = $this->request->post('title'); $message = $this->request->post('message'); $token = $this->request->post('__token__'); $rule = [ 'contact' => 'require|length:3,30', 'title' => 'require|length:3,30', 'message' => 'require|length:3,255', '__token__' => 'require|token', ]; $msg = [ 'contact.require' => __('Contact information required'), 'contact.length' => __('Contact must be within 3 to 30 characters'), 'title.require' => __('Message subject required'), 'title.length' => __('Message subject must be within 3 to 30 characters'), 'message.require' => __('Message content required'), 'message.length' => __('Message content must be within 3 to 255 characters'), ]; $data = [ 'contact' => $contact, 'title' => $title, 'message' => $message, '__token__' => $token, ]; $validate = new Validate($rule, $msg); $result = $validate->check($data); if (!$result) { $this->error(__($validate->getError()), null, ['token' => $this->request->token()]); } // 留言入庫 $data['user_id'] = $this->auth->isLogin() ? $this->auth->id : 0; $Msglog_model = new \app\admin\model\guestbook\Msglog; if ($Msglog_model->allowField(true)->save($data)){ $this->success(__('Message successfully')); } else { $this->error(__('Message failed')); } } } }
接口URL:http://您的域名/addons/guestbook/api.guestbook/index
利用/application
文件夾中的所有文件
會在插件安裝時覆蓋到根目錄的/application
文件夾的原理,直接將我們的api控制器
文件覆蓋到FastAdmin的api
模塊。
\addons\guestbook\application
目錄下建立api
目錄,api
目錄下再建立controller
目錄。
新建的controller
目錄內,建立api控制器類即可。
接口URL:http://您的域名/api/控制器/方法
此方式控制器文件
強烈建議以插件標識為文件前綴,以免文件沖突。
到此,關于“如何用FastAdmin插件添加API接口”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。