要用javascript調(diào)用php獲取數(shù)據(jù)庫接口,是一個(gè)很常見的前后端交互操作
創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的衡山網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
通過javascript發(fā)送http請(qǐng)求php的API接口,php連接數(shù)據(jù)庫并查詢結(jié)果,最后返回出來
這樣javascript就能獲取到數(shù)據(jù)庫的數(shù)據(jù)
第一個(gè)字母表示類型 count表示ID數(shù)量 / 隔開 ild,ild,ild來記錄數(shù)據(jù)(我是按照你的意思來)
比方
i5/1,2,3,4,5
類型為int 一共5個(gè) 分別1,2,3,4,5
其實(shí)有必要么。。。直接i:1,2,3,4,5不就行了
不一樣的話這樣寫 i:1,2,3|s:4,5,6
懂了嗎?
三中接受方式:
$_GET ? ?//get過來的數(shù)據(jù)
$_POST ?//post過來的數(shù)據(jù)
file_get_contents("php://input") ? //接口過來的xml等字符串?dāng)?shù)據(jù)用這個(gè)接
這三個(gè)方法足以接受任何數(shù)據(jù)了,具體你還要百度一下用法
JSONXML
XML: 是一種標(biāo)記語言,設(shè)計(jì)的宗旨是傳輸數(shù)據(jù)
JSON: 輕量級(jí)的數(shù)據(jù)交換格式
APP接口主要是用JSON輸出格式
APP接口輸出格式三要素:
1. code::錯(cuò)誤碼
2. msg:錯(cuò)誤碼對(duì)應(yīng)的描述
3. data:接口返回的數(shù)據(jù)
誰有權(quán)限調(diào)用APP接口,客戶端需要帶著憑證來調(diào)用APP接口
JWT的原理:
服務(wù)端認(rèn)證之后,生成一個(gè)JSON對(duì)象,返回給用戶。后續(xù)客戶端所有請(qǐng)求都會(huì)帶上這個(gè)JSON對(duì)象。服務(wù)端依靠這個(gè)JSON對(duì)象來認(rèn)定用戶身份。
組成: Header, Payload, Signature
1. Header
說一下我是什么
header通常包含了兩部分:類型和加密算法
{
"alg": "HS256",
"typ": "JWT"
}
header需要經(jīng)過Base64Url編碼后作為IWT的第一部分。
2. Payload
payload包含了claim, 三種類型reserved, public, private
reserved這些claim是JWT預(yù)先定義的,不強(qiáng)制使用,常用的有:
1). iss: 簽發(fā)者
2). exp: 過期的時(shí)間戳
3). sub: 面向的用戶
4). aud: 接收方
5). iat: 簽發(fā)時(shí)間
{
"sub":? "1234567890",
"name":? "John Doe",
"admin": true
}
payload需要經(jīng)過Base64Url編碼后作為JWT的第二部分。
3. Signature
創(chuàng)建簽名使用編碼后的header和payload以及一個(gè)密匙,使用header中指定的簽名算法進(jìn)行簽名
HMACSHA256(
base64UrlEncode(header) + "." +
base64UrlEncode(payload),
secret
)
簽名是在服務(wù)端進(jìn)行的,客戶端并不知道,所以是安全的。