前端和後端交互是怎樣的步驟?

補充原問題標題,原標題:「前端和後台交配是怎樣的步驟?」。


標題就包含一眼可見的錯別字的問題不值得回答。


題主可能用詞不對,你們這幫人為什麼不能好好幫助一下小白么,好好答一下也許能幫別人很大的忙,


之前學習過一段時間,所以大概說下,不對的地方歡迎指正。我簡單的說吧,例如B/S架構的應用。

首先,前端方面有一些起到事件監聽之類的按鈕或者什麼的,當產生一個需要和後台交換數據的事件的時候,前端方面會把這個數據打包,通過數據傳送傳到指定的伺服器地址,信息在傳給對應的伺服器之後,會得到對應的應答。這裡首先說以下伺服器,伺服器其實就是一個電腦,可能不是那種私人PC之類的,然後一直再開機等待著有人給它發送數據,當接收到Client的數據之後,伺服器程序對在相應的資料庫中查找比較,返回一個數據,這個數據也會被打包傳送給Client,客戶端接手並處理,產生不同的結果,反應再用戶界面中就是界面的相應變化。(沒有具體了解過,歡迎指正。。。。,求輕虐!!!)

舉個例子,比如你登陸的時候,首先你需要輸入用戶賬號密碼,首先一般的CLient會有腳本語言,驗證你到底有沒有輸入賬號密碼(不然帶著空的數據去伺服器查找很浪費資源),再驗證賬戶密碼都不是空並且格式什麼的都正確之後,點擊登陸按鈕就會把這個賬號密碼的數據打包,發送給伺服器並且等待伺服器的回應,伺服器在接受到這個Client的數據之後,用對應的方式解析出數據,查找在對應的資料庫中是否有該賬號,有的話密碼是不是一致,都符合的時候會返回一個類似「Yes」的信息,否則就會是「No」。這邊Client一直在等著伺服器的回應,接收到具體的信息並解析,根據不同的信息產生不同的i行為,比如登陸成功或者登陸失敗。

Client的信息怎麼打包,我只知道後人包裝後的API,具體底層實現不太了解,比如現在常用的什麼AJAX,JSON等等,底層信息傳送就涉及到計算機網路的知識,信息的打包方式,什麼TCP/IP等等,打包的什麼信息頭信息尾等等,都是很複雜的知識。

總之,大概的情況應該就像上面說的,更細節的就不太清楚了,畢竟這裡面隨便一個知識點都其實是很複雜的學問,我了解的比較表面,甚至這些表面的東西都可能了解的有錯誤。

再說一遍,歡迎指正。謝謝!


我們組都是男的 暫時還不知道怎麼交配


題主問題不夠清晰,我為題主梳理了四種可能情況:

1. 前端♀ 後台♂

2. 前端♀ 後台♀

3. 前端♂ 後台♀

4. 前端♂ 後台♂


通過ajax,實現前後端數據傳輸,前端觸發事件,然後傳遞數據給後端,後端接收參數。


你和你們公司服務端是剛交的朋友吧


1端,台概念上是有區別的。

2交接這個詞也不會用在這個地方。

覺得問題的人應該是在問:前後端交互的步驟。

這個問題Google一下便知或者知乎已經有類似的問題。


後端和後台是2個東西。通俗意思上的後台指「管理員操作模塊」,而後端指「伺服器端」。


前端 not 前段!

我都是前後端一起搞得


不知道,因為我前後端一起寫


A. 前端交付html+css+js,後端整合。

缺點,方案變更時牽一髮動全身。

前端要避免大規模改動,後端要盡量避免在前端的基礎上做修改。

B. 約定介面,前後端分別開發實現。

缺點,前端展示依賴後端介面時,這部分內容難以進行seo。

C. 前後端同構,在B的基礎上實現了服務端渲染,彌補了一些不足。

缺點,技術較新,沒有成熟的方案,複雜度更高,坑多。一般需要後端使用 Node.js ,局限較大。

具體來講,就是前後端使用同樣的模板引擎進行界面渲染。首次載入時使用服務端渲染,此後的頁面切換則使用前端渲染。如果你使用帶有 Virtual DOM 的 MVVM 框架的話,會更加輕鬆。本人是 Vue.js 黨,以 Vue 為例,可以使用 Nuxt.js 來做服務端渲染。


推薦閱讀:

為什麼總說要注重前端基礎?
前端工程師如何規劃自己的職業道路?

TAG:前端開發 | 前端開發工具 | 前端開發入門 |