亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專(zhuān)欄INFORMATION COLUMN

數(shù)據(jù)接口(API)開(kāi)發(fā)須知

piglei / 1027人閱讀

摘要:由服務(wù)端生成在請(qǐng)求任何接口之前,都必須先請(qǐng)求一個(gè)獲取服務(wù)器生成的的接口,獲取之后,才請(qǐng)求其他接口是請(qǐng)求時(shí)間型號(hào)設(shè)備號(hào)系統(tǒng)類(lèi)型加密加密頭部存儲(chǔ)基本參數(shù)加密校驗(yàn)參數(shù)必須填必須填以下為選填,可有可無(wú),任由開(kāi)發(fā)者自己定義類(lèi)型設(shè)備號(hào)版本型號(hào)

傳統(tǒng)API與RESTful API

傳統(tǒng)API

獲取用戶(hù)信息  get   /api/user/read
更新用戶(hù)信息  post  /api/user/update
新增用戶(hù)信息  post  /api/user/add
刪除用戶(hù)信息  post  /api/user/delete

Restful API

獲取用戶(hù)信息  get     /api/user/1
更新用戶(hù)信息  put     /api/user/1
新增用戶(hù)信息  post    /api/user
刪除用戶(hù)信息  delete  /api/user/1

區(qū)別

相同:數(shù)據(jù)一般以json或xml格式返回
不同:
Restful API:操作的是資源;增刪改查對(duì)應(yīng)http動(dòng)詞
傳統(tǒng)API :   只有g(shù)et/post動(dòng)詞;
HTTP狀態(tài)碼

注意:API接口返回的 JSON數(shù)據(jù) 中包含的是業(yè)務(wù)狀態(tài)碼,并非HTTP狀態(tài)碼


2XX系列

200 請(qǐng)求成功(作用于GET方式)
201 創(chuàng)建成功(作用于POST方式)
204 更新/刪除成功(作用于PUT/Delete方式)

4XX系列

400 無(wú)效請(qǐng)求(參數(shù)錯(cuò)誤或不合法)
401 缺少用戶(hù)認(rèn)證參數(shù),比如說(shuō),請(qǐng)求的時(shí)候沒(méi)有帶上 Token 等。
403 沒(méi)有權(quán)限
404 請(qǐng)求資源不存在
405 請(qǐng)求方法(get/post/put/delete)不允許使用

5XX系列

500 服務(wù)器內(nèi)部錯(cuò)誤(泛用,無(wú)需區(qū)分具體錯(cuò)誤)
501 功能沒(méi)有實(shí)現(xiàn)
API數(shù)據(jù)結(jié)構(gòu)

返回的JSON數(shù)據(jù)結(jié)構(gòu) 必須由團(tuán)隊(duì)統(tǒng)一約定,一般必須包含3項(xiàng):業(yè)務(wù)狀態(tài)碼、消息、數(shù)據(jù)

//API 返回?cái)?shù)據(jù)結(jié)構(gòu)如下
{
    "status": 0,
    "msg": "OK",
    "result": []
}

封裝一個(gè)方法格式化通用API接口數(shù)據(jù)結(jié)構(gòu)

function formatDataByJson($status, $msg, $data=[], $httpCode=200){

    $result = [
        "status" => $status,
        "msg" => $msg,
        "data" => $data
    ];

    return json($result, $httpCode);
}
API異常處理 API數(shù)據(jù)安全

安全問(wèn)題

黑客通常有2種手法獲取數(shù)據(jù):
1、抓包
2、反編譯

1、請(qǐng)求地址、頭部參數(shù)、體部數(shù)據(jù)暴露(利用加密、有效時(shí)間、唯一性解決)
2、返回?cái)?shù)據(jù)明文暴露(可通過(guò)加密解決)
3、擔(dān)心反編譯(使用防反編譯工具打包)
4、XSS腳本跨站攻擊

根據(jù)安全問(wèn)題,有2種生成Token方式

由客戶(hù)端生成Token

客戶(hù)端工程師和服務(wù)器端工程師約定好規(guī)則,客戶(hù)端工程師把約定好規(guī)則的加密Token傳給服務(wù)器端,服務(wù)器端再按照約定好規(guī)則解密就好。

由服務(wù)端生成Token

在請(qǐng)求任何API接口之前,都必須先請(qǐng)求一個(gè)獲取服務(wù)器生成的Token的API接口,獲取Token之后,才請(qǐng)求其他API接口

Token是 請(qǐng)求時(shí)間+型號(hào)+設(shè)備號(hào)+系統(tǒng)類(lèi)型 加密(aes加密)

HTTP頭部存儲(chǔ)基本參數(shù)

1、token(加密校驗(yàn)參數(shù))必須填
2、content-type (application/json) 必須填
---------------------以下為選填,可有可無(wú),任由開(kāi)發(fā)者自己定義
3、app-type (app類(lèi)型:android/ios/pc)
4、did  (設(shè)備號(hào))
5、version  (版本)
6、model  (型號(hào))

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/26158.html

相關(guān)文章

  • Vert.x入坑須知(1)

    摘要:輕量級(jí),部署簡(jiǎn)單。此外,本文也不是入門(mén)文檔,而是為了預(yù)防陷坑而給出的指導(dǎo)意見(jiàn),故在閱讀本文之前還請(qǐng)先仔細(xì)閱讀的文檔??梢曌鞯囊粋€(gè)最小部署和運(yùn)行單元,簡(jiǎn)單的說(shuō),可類(lèi)比為。,主,負(fù)責(zé)部署程序中其他的。嚴(yán)格來(lái)講,之后,上述第一點(diǎn)并不完全正確。 一直以來(lái)早有將這些年用Vert.x的經(jīng)驗(yàn)整理一下的想法,奈何天生不是勤快人,直到最近扶墻老師問(wèn)起,遂成此文。 選擇理由 現(xiàn)在想想,我們應(yīng)該算是國(guó)內(nèi)用V...

    Turbo 評(píng)論0 收藏0
  • 【容器云 UK8S】產(chǎn)品簡(jiǎn)介:產(chǎn)品概念、使用須知與名詞解釋

    摘要:產(chǎn)品概念是一項(xiàng)基于的容器管理服務(wù),你可以在上部署管理擴(kuò)展你的容器化應(yīng)用,而無(wú)需關(guān)心集群自身的搭建及維護(hù)等運(yùn)維類(lèi)工作。完全兼容原生的,以私有網(wǎng)絡(luò)為基礎(chǔ),并整合了等云產(chǎn)品。其命名規(guī)范為。產(chǎn)品概念UCloud Container Service for Kubernetes (UK8S)是一項(xiàng)基于Kubernetes的容器管理服務(wù),你可以在UK8S上部署、管理、擴(kuò)展你的容器化應(yīng)用,而無(wú)需關(guān)心Kub...

    Tecode 評(píng)論0 收藏0
  • Vert.x入坑須知(4)

    摘要:主要是避免引入太多的復(fù)雜性,并且出于靈活部署的需要。以應(yīng)用為例,由于實(shí)際上是在上執(zhí)行,若它被阻塞,即導(dǎo)致后續(xù)請(qǐng)求全部無(wú)法得到處理。因此,最合適的做法就是對(duì)于簡(jiǎn)單業(yè)務(wù),采用異步庫(kù)。本系列其他文章入坑須知入坑須知入坑須知 最開(kāi)始覺(jué)得這個(gè)系列也就最多3篇了不起了(因?yàn)槭虏贿^(guò)三嘛),沒(méi)曾想居然迎來(lái)了第四篇! Kotlin 由于最近決定投身到區(qū)塊鏈的學(xué)習(xí)當(dāng)中的緣故,出于更好的理解它的基本概念,自...

    summerpxy 評(píng)論0 收藏0
  • 工具推薦丨推薦又拍云web版API管理工具,一款輔助使用又拍云的輕量工具

    摘要:沒(méi)想到會(huì)找到其他開(kāi)發(fā)者針對(duì)又拍云開(kāi)發(fā)又拍云管理工具這樣的工具,我個(gè)人覺(jué)得也算是又拍云在接口方面比較開(kāi)放的一個(gè)的案例吧。 今年上半年,我通過(guò)又拍云搭建了一個(gè)獨(dú)立博客,不久之后就遇到了很多實(shí)際問(wèn)題:網(wǎng)上看到圖片想收藏到空間,YouTube上的MV想放到自己的博客,想對(duì)一段音視頻進(jìn)行在線(xiàn)預(yù)覽和編輯……當(dāng)時(shí)我查了下,必須要通過(guò)API接口編寫(xiě)一段程序才能完成(不是程序猿,搭建獨(dú)立博客已經(jīng)要了我半...

    adam1q84 評(píng)論0 收藏0
  • 石家莊生育健康服務(wù)平臺(tái)項(xiàng)目

    摘要:生育健康平臺(tái)算是我做過(guò)的比較完整,也比較大的一個(gè)項(xiàng)目了。首先,主要做的還是寫(xiě)前臺(tái),因?yàn)楹笈_(tái)我們這里用原來(lái)的項(xiàng)目的接口即可。孕前保健孕期保健兒童保健生殖健康就是通過(guò)在標(biāo)簽下放好類(lèi),然后在點(diǎn)擊時(shí)切換類(lèi)然后調(diào)接口拼接頁(yè)面想要的內(nèi)容。 生育健康平臺(tái)算是我做過(guò)的比較完整,也比較大的一個(gè)項(xiàng)目了?,F(xiàn)在想記錄一下,總結(jié)一下做的過(guò)程,遇到的難點(diǎn)。 首先,主要做的還是寫(xiě)前臺(tái),因?yàn)楹笈_(tái)我們這里用原來(lái)的項(xiàng)目...

    springDevBird 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<