什麼是介面

一、什麼是介面

官方:介面是硬體或者軟體提供給外界的服務。

硬體介面:USB介面。

軟體介面:api(application program interface)

 

cookie:在伺服器產生,保存在客戶端

session:在伺服器產生,保存在伺服器,但是可以通過cookie傳輸到客戶端。sessionID

token:鑒權碼,也可以通過cookie傳輸。

 

二、為什麼需要介面

專業:因為項目內部的數據能夠被外部修改。

 

三、介面返回的數據格式

json是一種數據格式:整形,字元串

1.json格式

{「error_code」:”0″,”msg”:”提現成功”,”data”:”詳細的數據”}

error_code:錯誤碼,0成功,40001錯誤碼

msg:錯誤碼的中文說明

data:具體的數據

 

JSON由鍵值對{}和數組[]組成。

 

2.xml格式

<xml>

<error_code>0</error_code>

<msg>提現成功</msg>

<data>詳細的數據</data>

</xml>

 

3.html格式

<html>

<head>

<title></title>

</head>

<body>

數據

</body>

</html>

 

四、介面協議

http: 以http開頭。返回json格式

webservice:以http開頭,以?wsdl結束。(web service descrition,language),返回xml格式。

duboo協議:duboo:開頭,返回json格式

 

請問什麼是http協議?

又名:超文本傳輸協議,主要作用是:瀏覽器和伺服器之間交互數據。交互數據分為請求和響應兩個部分。

請求:請求行,請求頭,空一行,請求正文

響應:響應行,響應頭,空一行,響應正文

請求行:請求方式,請求地址url,協議

GET //localhost/phpwind/index.php?m=u&c=login HTTP/1.1

請求頭:

Host: localhost(主機)

Connection: keep-alive(連接狀態,保持活躍)

User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36(客戶端的用戶)

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3(客戶端接收的數據類型)

Referer: //localhost/phpwind/(來源)

Accept-Encoding: gzip, deflate, br(客戶端接收的壓縮方式)

Accept-Language: zh-CN,zh;q=0.9(客戶端接收的語言)

Cookie: Pycharm-a7943e9=c6763d48-d1f4-4903-b72d-738219304462; csrf_token=00af6710d4cf234e; z92_visitor=J4FIxKqz%2BYgWDGcoJzFV70Y1b2ka02%2BjPcVw6nwmEVE%3D; z92_lastvisit=6998%091593863870%09%2Fphpwind%2F

(客戶端發送給伺服器的cookie)

空一行

請求正文

—————————————————————————————————————-

響應行:協議,狀態碼,狀態資訊

200成功

30X重定向

40X請求的資源找不到

50X伺服器錯誤

HTTP/1.1 200 OK

響應頭

Date: Sat, 04 Jul 2020 13:08:20 GMT(響應時間)

Server: Apache/2.4.23 (Win32) OpenSSL/1.0.2j PHP/5.4.45(伺服器)

X-Powered-By: PHP/5.4.45

Set-Cookie: z92_lastvisit=6998%091593868101%09%2Fphpwind%2Findex.php%3Fm%3Du%26c%3Dlogin; expires=Sun, 04-Jul-2021 13:08:21 GMT; path=/

Set-Cookie: z92_visitor=Ig2%2Bvhubk1sSLrLMujkCLPyXnWu%2FLhE41lYKXObcN8cC7bqaj1foBQ%3D%3D; path=/

Vary: Accept-Encoding(伺服器發送給客戶端的cookie)

Content-Length: 15322(響應的位元組數)

Keep-Alive: timeout=5, max=100

Connection: Keep-Alive

Content-Type: text/html;charset=utf-8(響應的數據的類型)

空一行

響應正文

<!doctype html>

<html>

<head>

<meta charset=”UTF-8″ />

<title>登錄 – phpwind 9.0 – Powered by phpwind</title>

<meta http-equiv=”X-UA-Compatible” content=”chrome=1″>