>api接口主要接口主要解決的問題
* [ ] 接口被其它網站惡意盜刷
* [ ] 防止接口被前端重復提交
* [ ] 提高接口使用的可控制性
* [ ] 降低開發接口的成本
>[danger]在api接口開發中,凡是需要強制用戶登錄的接口,控制器中方法的名稱【action】的前綴為"member_",當檢測到【action】的前綴為"member_",接口會先去檢測用戶登錄信息,如果用戶未登錄,接口返回 {"err":"1","code":"10207","content":"用戶未登錄"}
, 需要注意的是api不再使用session,用戶信息的獲取是通過cowcms_userid參數獲取,當用戶登錄后會返回cowcms_userid的值,前端可以將該值保存起來,在需要強制用戶登錄的接口訪問時攜帶該參數,后端api直接可以通過$this->userInfo獲取用戶信息.
## 接口開發
```
namespace xxxxxx;
use api\Api;
class interface extends Api
{
/*************************************************************
* member_getInfo 需要強制登錄的接口,在調用該接口時,必須要傳遞cowcms_userid
* return json 返回結果
*************************************************************/
public function member_getInfo()
{
$userInfo = $this->userInfo;//獲取的登陸用戶信息
return $this->returnData($userInfo);
}
/*************************************************************
* getInfo 不需要強制登錄的接口,返回文字列表
* return json 返回結果
*************************************************************/
public function getInfo()
{
$userInfo = $this->userInfo;//如果用戶登錄$userInfo為用戶信息,如果沒登錄為false
return $this->returnData(["測試"]);
}
}
```
>cowcms_userid值的獲取 方式
* [ ] 當控制器繼承了 Member或者Memberbase類時,并且用戶登錄成功可以獲取該值
```
namespace app\signed\controller;
use user\Member;
class Signedajax extends Member
{
function getCowcmsUserid()
{
$userInfo = $this -> userInfo;
echo $userInfo['cowcms_userid'];
}
}
```
```
namespace app\signed\controller;
use user\Memberbase;
class Signedajax extends Memberbase
{
function getCowcmsUserid()
{
$userInfo = $this -> userInfo;
echo $userInfo['cowcms_userid'];
}
}
```
* [ ] 如果控制器沒有繼承Member或者Memberbase類,用戶進行登錄操作時
```
namespace app\signed\controller;
class login
{
function login()
{
/*用戶登陸代碼*/
$userInfo = ['id'=>10,"......"];
$cowcms_userid = exeFun('setCowcmsUserid',[$userInfo['id']],'member');
echo $cowcms_userid ;
}
}
```
- 序言
- 基礎
- 源碼包
- 核心包
- 完整包
- 系統模塊
- 安裝模塊
- 后臺模塊
- 插件模塊
- 插件開發
- 開發基礎
- 權限開發
- 菜單開發
- 開發調試
- 碎片開發
- 碎片鉤子預設表
- 插件說明
- 字段插件
- 插件介紹
- 字段使用
- 單行文本
- 多行文本
- 選項-下拉
- 選項-復選
- 選項-單選
- 選項-滑塊
- 顏色選擇器
- 星級評分
- 日期時間
- 文件上傳
- 編輯器
- API接口
- 微信插件
- 微信配置
- 公眾號配置
- 支付配置
- 微信支付使用
- API類庫
- 紅包發放
- 付款到零錢
- 碎片
- 公眾號碎片
- 紅包碎片
- 付款到零錢碎片
- API微信接口
- 支付寶插件
- 支付寶配置
- 支付寶支付使用
- api接口
- api接口后端開發
- api接口前端使用
- API參數接口
- 會員插件
- 登錄使用
- 會員碎片
- API會員接口
- API注冊接口
- 積分插件
- 積分設置
- 積分碎片
- API積分接口
- API提現接口
- API兌換接口
- API充值接口
- 訂單
- 訂單碎片
- API訂單接口
- 商城
- 商城鉤子
- API商城接口
- API商城會員接口
- 簽到
- 簽到設置
- 簽到碎片
- API簽到接口
- 上傳
- 上傳設置
- 上傳JS接口
- 推廣插件
- 海報設置
- API海報接口
- 文章插件
- 文章設置
- 文章鉤子
- API文章接口
- API文章會員接口
- 管理員
- 管理員碎片
- 站內信
- API站內信接口
- 雜項
- 菜單
- 菜單設置
- API菜單接口
- 錯誤碼
- 支付碎片
- 支付
- 充值
- 購買會員組
- 購買產品