亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

(☆_☆)/~~前后端是如何交互的?小白一個,求高手指點。

(☆_☆)/~~前后端是如何交互的?小白一個,求高手指點。

慕標琳琳 2018-08-18 09:10:16
只接觸過前端,各種不懂后端的。。。希望大神能給描述一下它們之間的關系,如何聯系的?跪謝~~~!
查看完整描述

1 回答

?
滄海一幻覺

TA貢獻1824條經驗 獲得超5個贊

一句話:HTTP(s)協議

所謂接口就是 HTTP(S) 的URL + 參數 + 返回的結果

前端發起請求并等待服務器響應(返回結果)

1、原始的HTML方式是表單

<form method="post/get">
 <input...> ...
</form>

這種方式在submit(提交表單)之后,瀏覽器會發送一個HTTP(GET/POST)請求給服務器(后端)
服務器處理完后返回結果 頁面 ,瀏覽器重新顯示新的頁面,所以會刷新

2、現在流行的方式是AJAX

已jquery為例,$.get/post/ajax 之后也會給服務器發送HTTP請求
服務器處理完后返回結果(比如json)而非整個頁面,所以是 無刷新 的。

后端等待前端請求,處理請求后把處理結果返回給前端

對于后端來說,原始的表單方式和AJAX發來的請求是一樣的,
唯一區別就是返回的結果類型,
前者要返回整個新頁面的HTML代碼,
而后者只需要返回約定好的類型數據(比如json:{result:true/false, msg: 'blabla'})

總結

前后端交互可以 類比 一下函數調用(作為前端應該知道javascript函數吧...)
后端負責定義好函數:

function test(a, b){    return a + b;
}

前端負責調用這個后端提供的函數(接口):

r = test(1,2)
alert('1+2=' + r);

類比:

$.post({    url:'test',    data:'a=1&b=2',    success:function(data,status){
        alert('1+2=' + data);
    },
})

前后端的交互就跟函數調用一樣(如果你不追究瀏覽器后臺的HTTP處理的話)

嗯,就是這樣!前端填入參數并調用接口,后端處理然后返回結果,前端再處理后端返回的這個結果!
END!


查看完整回答
反對 回復 2018-09-21
  • 1 回答
  • 0 關注
  • 605 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號