基本知識(shí)
1.前端提供數(shù)據(jù)
在開發(fā)中,URL主要是由后臺(tái)來寫好給前端事格。
若后臺(tái)在查詢數(shù)據(jù)介粘,需要借助查詢條件才能查詢到前端需要的數(shù)據(jù)時(shí),這時(shí)后臺(tái)會(huì)要求前端提供相關(guān)的查詢參數(shù)(即URL請(qǐng)求的參數(shù))众雷。
2.前端請(qǐng)求參數(shù)的形式
一般使用GET和POST這兩種方式
GET從指定的服務(wù)器中獲取數(shù)據(jù),POST提交數(shù)據(jù)給指定的服務(wù)器處理
3.接口文檔主要由后臺(tái)設(shè)計(jì)和修改
后臺(tái)直接跟數(shù)據(jù)打交道做祝,最清楚數(shù)據(jù)庫里有什么數(shù)據(jù)砾省,能返回什么數(shù)據(jù)。
前端只是數(shù)據(jù)的被動(dòng)接受者混槐,只是接口文檔的使用者编兄。
使用過程中,發(fā)現(xiàn)返回的數(shù)據(jù)部隊(duì)纵隔,則跟后臺(tái)商量翻诉,由后臺(tái)修改。
切記:前端不能隨意更改接口文檔捌刮,除非取得后臺(tái)同意。
4.前端與后臺(tái)交互的數(shù)據(jù)格式
主要是JSON舒岸,XML現(xiàn)在用的不多绅作。
JSON通常用于與服務(wù)器交換數(shù)據(jù),AJAX(即“Asynchronous Javascript And XML”(異步 JavaScript 和 XML)蛾派,是指一種創(chuàng)建交互式應(yīng)用的網(wǎng)頁開發(fā)技術(shù)俄认。)
也是通過JSON數(shù)據(jù)來完成交互。
AJAX的主要工作方式
在前后端分離的開發(fā)過程中洪乍,主要通過參數(shù)傳遞來進(jìn)行數(shù)據(jù)的交換眯杏。首先,由前端對(duì)某個(gè)url發(fā)起請(qǐng)求壳澳,并附加一些參數(shù)岂贩;然后后臺(tái)根據(jù)前端傳遞的參數(shù)進(jìn)行數(shù)據(jù)查詢,經(jīng)過一定的數(shù)據(jù)處理后巷波,以JSON或文本形式將數(shù)據(jù)傳遞到前端萎津;最后卸伞,前端根據(jù)后臺(tái)查詢到的數(shù)據(jù)以一定的模板進(jìn)行渲染,渲染之后呈現(xiàn)于頁面中锉屈。
通常來說荤傲,前端的請(qǐng)求類似于下面這樣:
$.ajax({
method:'GET',
url:'s.php',//本地測(cè)試時(shí),此處的url是相對(duì)于html文件的路徑颈渊;實(shí)際開發(fā)時(shí)遂黍,替換url為接口文檔中的地址即可
data:{
username:'random'
}, //發(fā)起請(qǐng)求時(shí)所附帶的參數(shù)
success:function(data) {
console.log(data);
}//請(qǐng)求成功后的回調(diào)函數(shù)。當(dāng)data為JSON格式時(shí)俊嗽,可能需要使用JSON.parse(data)進(jìn)行解析
});
后臺(tái)操作最簡(jiǎn)單的情況如下:
<?php
header("Content-type: text/html; charset=utf-8");
/*獲取AJAX所附帶的參數(shù)*/
$username=$_GET['username'];
/**
* 對(duì)請(qǐng)求中所附帶的參數(shù)進(jìn)行相應(yīng)的處理雾家,
* 一般來說會(huì)依據(jù)這些參數(shù)進(jìn)行相應(yīng)的數(shù)據(jù)庫查詢
* 然后將數(shù)據(jù)庫中查詢到的數(shù)據(jù)轉(zhuǎn)換成json格式傳遞給前端
* 在json數(shù)據(jù)中存在中文時(shí),json_encode函數(shù)中的第二個(gè)參數(shù)應(yīng)為JSON_UNESCAPED_UNICODE
*/
echo '前端所傳的參數(shù)值為:'.$username;exit();
?>
參考資料
1.CSDN博客
2.知乎