91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php mysql APP接口 移動端接口API   M-API 開源代碼

發布時間:2020-07-02 09:11:12 來源:網絡 閱讀:2580 作者:我想說我不是神 欄目:數據庫

開源協議:Apache License 2.0

源碼地址:https://github.com/movie0312/M-API.git

M-API


概述... 1

 

一、    接口文檔結構... 3

 

二、    接口環境設置... 3

 

1.   開發環境... 3

 

2.   生產環境... 3

 

三、    基本配置說明... 4

 

四、    mysql配置說明... 5

 

五、    對外接口入口配置說明... 7

 

六、    接口參數說明... 7

 

七、    code代碼說明... 12

 


 

概述


為了方便前端以及移動端接口的開發,將相應功能整合為一個可快速設置應用的Web API,從而加快項目開發的周期。M-API通過簡單設置可將數據庫選擇性的暴露給調用方。當然,為了安全考慮,建議設置相應的操作權限。該文檔適合有一定基礎的PHPer

M-API開發環境為:php-7.0.4,  mysql-5.7.11。同時支持php5.6.0,其它版本未進行測試。

M-API運行環境需要開啟mbstring;加密操作需要開啟openssl;數據庫操作需要開啟pdo_mysql

M-API支持密送和簽名。目前只支持RSA加密。鑒于RSA的特性,當交互信息量較大時建議修改為僅加密處理敏感信息,其它信息采用對稱加密;或將傳輸協議改為HTTPS。如果必須使用RSA,可將信息進行分段處理。

M-API支持getpost

M-API數據庫目前僅支持mysql

M-API全部采用PDO 預處理操作數據庫。

M-API支持mysql字段有:char, varchar, tinyint, smallint, mediumint, int, bigint, decimal, text

M-API支持同時多個數據庫連接。同樣,也支持同時多組基本設置調用。

M-API支持表級別和列級別的操作權限設置。

M-API可指定關聯字段,以避免注入。

M-API支持自動數據有效性的驗證。可手動指定正則驗證。

M-API接收和傳出數據均為json

M-API不支持事務。請在業務邏輯中進行處理。

M-API不支持聯結查詢。請使用視圖查詢。

最終解釋權歸開發者所有。

未盡事宜,后續補充。

能力一般,水平有限。請多多包涵。



/class/basic.class.php————————基礎類  基本配置信息

/class/mysql.class.php————————數據庫類 mysql

/class/mysql.config.class.php——————mysql配置類

/class/rsa.class.php——————————加密類 rsa

/class/standard.class.php———————標準類常用函數


/pem/————————————————密鑰


/index.php——————————————對外接口入口

/showstruct.php——————————— 快速顯示數據庫結構




需要配置以下文件

/class/basic.class.php

/class/mysql.config.class.php

/index.php

  1. 2.    生產環境

需刪除以下文件

/readme.docx

/showstruct.php



public static $_config =array(

'default'=> array(

       '參數' => ‘

),

'自定義配置名'=> array(

       '參數' => ''

)

);

基本配置

參數

說明

display_errors

啟用調試

true / false

rsa

啟用rsa加密

true / false

cipher

啟用密送

true / false

private_key_path

私鑰文件的路徑

'string' (該選項當rastrue時有效。當cipherfalse時路徑后自動增加子文件夾需傳入文件夾名稱)

public_key_path

公鑰文件的路徑

'string' (該選項當rastrue時有效。當cipherfalse時路徑后自動增加子文件夾需傳入文件夾名稱)

private_key_name

私鑰文件名

'string' (該選項當rastrue時有效)

public_key_name

公鑰文件名

'string' (該選項當rastrue時有效)

get

啟用get

true / false(一般為false;當rsatrue時需為false)

參數

說明

db_type

數據庫類型

mysql

db_host

服務器地址

'string'

db_port

端口

'int'

db_name

數據庫名

'string'

db_user

用戶名

'string'

db_pwd

密碼

'string'

 

  • 配置說明

可通過/showstruct.php快速生成。但生成后仍建議設置相應權限。

public static $_tables =array(

'0'=> array(

       '0' => '表名1',

'參數' =>''

),

'1'=> array(

       '0' => '表名2',

'參數' =>''

)

);


public static $_fields =array(

'0'=> array(

       '0' => '字段名1',

       '1' => '字段類型1',

'參數' =>''

),

'1'=> array(

       '0' => '字段名2',

       '1' => '字段類型2',

'參數' =>''

)

);

表權限配置

參數

說明

add

允許增加

true / false  默認為true

del

允許刪除

true / false  默認為true

edit

允許修改

true / false  默認為true

select

允許查詢

true / false  默認為true

字段權限配置

isuid

身份標識

當為身份標識時接口內部使用;每個表僅有一個字段需要設置該屬性;禁止任何外部調用; editselect設置失效。默認為false

edit

允許修改

true / false  默認為true

select

允許查詢

true / false  默認為true

pattern

正則過濾

'string' 正則表達式  默認為空


  • 根據$data['b']['i']做用戶操作權限判斷。

  • 根據$data['b']['d']做用戶操作時限判斷。

  • 根據$data['b']['t']做用戶身份判斷并賦值$_uid


傳入參數

參數

說明

data

傳入值

'string' (加密/非加密) json

傳出參數

參數

說明

state

執行狀態

0未執行 /   1已執行

code

返回代碼

參閱“code代碼說明”

info

返回信息

'string' (加密/非加密) json

 

data名稱 / 值列表 (javascript為例)

名稱

說明

data[b]

基本內容

'array' (參下)

data[b][i]

身份標識

'string' 必需

例:

var temp = 'id';

data[b][d]

時間戳

'int' 必需

例:

var temp = 1461143961;

名稱

說明

data[b][t]

令牌

'string' (身份id + MD5(登陸密碼 ) + 時間戳)

可選 (沒有該鍵的情況下默認為seeion驗證)

例:

var temp = 'id49ba59abbe56e0571461143961';

data[c]

執行內容

'array' (參下)

data[c][][a]

操作類型

'int' (0增加, 1刪除, 2修改, 3查詢) 必需

0返回增加id1, 2返回影響行數;3返回具體array

例:

var temp = 0;

data[c][][t]

操作的表

'int' (后臺生成且允許相應操作) 必需

例:

var temp = 1;

data[c][][V]

字段值

'array' 操作類型為0, 2時必需

格式:'字段代號' : '字段值'

字段代號由后臺生成且允許相應操作

例:

var temp = {

'1' : 'abc',

'2' : true,

'3' : 1,

};

data[c][][w]

條件

'array' 操作類型為1,  2, 3時可選

格式:

  1. 1.      條件關系

'logic' : '具體關系'

字段與字段的條件關系

or / and 默認為and

  1. 2.      具體條件

i.     'logic'  : '具體關系'

字段內的條件關系

or / and 默認為and

ii.   '字段代號' : {

  '條件類型' : '條件值' *條件值有可能是'array'

}

字段代號由后臺生成且允許相應操作

  1. 3.      條件類型

等于:'eq' : '具體值'

不等于:'neq' : '具體值'

大于:'gt' : '具體值'

大于等于:'egt' : '具體值'

小于:'lt' : '具體值'

小于等于:'elt' : '具體值'

模糊查詢:

'like' : '具體值'

'like' : 'arrayA'

  arrayA

   '0' : 'arrayB',

'1' : '條件關系(or / and)'

  arrayB

   '索引' : '具體值'

模糊查詢(反):'notlike' : '具體值'

區間查詢:

'between' : 'array'

array

'0' : '起始值',

'1' : '結束值'

區間查詢(反):'notbetween' : 'array' (同上)

IN查詢:

'in' : 'array'

array

'索引' : '具體值'

IN查詢(反):'notin' : 'array' (同上)


例:

var temp = {

'logic' : 'or',

'1' : {

  'logic' : 'and',

'eq' : '1',

'like' : {

'0' : {

'0' : '%',

'1' : '%'

},

'1' : 'or'

}

},

'2' : {

'eq' : '2'

}

};

data[c][][s]

顯示字段

'string' 操作類型為3時必需

格式:'字段代號1, 字段代號2, 字段代號3,……'

字段代號由后臺生成且允許相應操作

例:

var temp = ['1', '2', '3', '5'];

data[c][][o]

排序

'array' 操作類型為3時可選

格式:'字段代號' : '排序方式'

排序方式:'' / desc默認為空(升序)

字段代號由后臺生成且允許相應操作

例:

var temp = {

'1' : '',

'2' : 'desc'

};

data[c][][l]

起始和數量

'string' 操作類型為3時可選

格式:'起始, 數量'

例:

var temp = ['1', '5'];

 

  • 代碼說明

代碼

說明

0000

正常

A001

php需要mbstring擴展支持

A002

拒絕訪問錯誤身份

C000

配置文件調試模式錯誤

C001

配置文件獲取數據模式錯誤

C002

配置文件私鑰文件的路徑錯誤

C003

配置文件公鑰文件的路徑錯誤

C004

配置文件私鑰文件名錯誤

C005

配置文件公鑰文件名錯誤

C006

配置文件密送方式錯誤

C007

配置文件加密開關錯誤

代碼

說明

C008

配置文件數據庫參數錯誤

C009

配置文件數據庫類型錯誤

C010

mysql基本設置表允許增加開關設置錯誤

C011

mysql基本設置表允許刪除開關設置錯誤

C012

mysql基本設置表允許修改開關設置錯誤

C013

mysql基本設置表允許查詢開關設置錯誤

C014

mysql基本設置字段允許修改開關設置錯誤

C015

mysql基本設置字段允許查詢開關設置錯誤

C016

mysql基本設置字段身份標識開關設置錯誤

D001

php需要pdo_mysql擴展支持

D002

數據庫連接錯誤

D003

sql執行錯誤

E001

php需要openssl擴展支持

E002

私鑰文件不存在

E003

私鑰不可用

E004

公鑰文件不存在

E005

公鑰不可用

E006

加密出錯

E007

解密出錯

E008

私鑰路徑錯誤

E009

公鑰路徑錯誤

代碼

說明

G001

缺少傳入參數data[b]

G002

缺少傳入參數data[b][i]

G003

傳入值錯誤data[b][i]

G004

缺少傳入參數data[b][d]

G005

傳入值錯誤data[b][d]

G006

缺少傳入參數data[c]

G007

缺少傳入參數data[c][][a]

G008

傳入值錯誤data[c][][a]

G009

缺少傳入參數data[c][][t]

G010

傳入值錯誤data[c][][t]

G011

傳入參數不允許增加操作data[c][][t]

G012

傳入參數不允許刪除操作data[c][][t]

G013

傳入參數不允許修改操作data[c][][t]

G014

傳入參數不允許查詢操作data[c][][t]

G015

缺少傳入參數data[c][][v]

G016

傳入參數不允許更改操作data[c][][v][]

G017

傳入參數錯誤data[c][][v][]

G018

傳入值不允許為空data[c][][v][]

G019

傳入值類型錯誤data[c][][v][]

G020

傳入值超出范圍data[c][][v][]

G021

傳入值格式錯誤data[c][][v][]

代碼

說明

G022

傳入參數不允許任何操作data[c][][v][]

G023

傳入參數不允許任何操作data[c][][w][]

G024

傳入參數錯誤data[c][][w][]

G025

傳入參數錯誤data[c][][w][][]

G026

缺少傳入參數data[c][][s]

G027

傳入值錯誤data[c][][s]

G028

傳入值不允許任何操作data[c][][s]

G029

傳入值不允許查詢操作data[c][][s]

G030

傳入參數錯誤data[c][][o][]

G031

傳入參數不允許任何操作data[c][][o][]

G032

傳入值錯誤data[c][][o][]

G033

該值僅允許輸入兩個參數data[c][][l]

G034

傳入值錯誤data[c][][l][]

 


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

城口县| 盈江县| 闸北区| 丹巴县| 大理市| 松溪县| 资讯| 准格尔旗| 易门县| 九台市| 奎屯市| 渝北区| 宜兰市| 蕲春县| 吴忠市| 藁城市| 正阳县| 泽库县| 镶黄旗| 泉州市| 中方县| 连城县| 宁武县| 平湖市| 兴安盟| 体育| 平远县| 霞浦县| 明溪县| 乌鲁木齐县| 来宾市| 富裕县| 曲周县| 茂名市| 财经| 贡嘎县| 瑞金市| 共和县| 图们市| 屏东市| 滦平县|