前端常見面試問題及其解析--1.后台數據如何傳送到前端


面試問題及其解析:

 

1.后台數據如何傳送到前端

  兩種方法:get/post(最常用的兩種HTTP方法,其實還有head、put、delete、options)

                 HTTP:超文本傳輸協議,保證客戶機與服務器之間的通信(三次握手)

                 GET-從指定的資源請求數據(如百度搜索)

                    請注意,查詢字符串(名稱/值對)是在 GET 請求的 URL 中發送的:

                       /test/demo_form.asp?name1=value1&name2=value2

                   特性:

      • GET 請求可被緩存
      • GET 請求保留在瀏覽器歷史記錄中
      • GET 請求可被收藏為書簽
      • GET 請求不應在處理敏感數據時使用
      • GET 請求有長度限制
      • GET 請求只應當用於取回數據

                 POST-向指定的資源提交要被處理的數據(如提交表單)

                   請注意,查詢字符串(名稱/值對)是在 POST 請求的 HTTP 消息主體中發

                   送的:

                      

  POST /test/demo_form.asp HTTP/1.1
  Host: w3schools.com
  name1=value1&name2=value2

 

                    特性:

      • POST 請求不會被緩存
      • POST 請求不會保留在瀏覽器歷史記錄中
      • POST 不能被收藏為書簽
      • POST 請求對數據長度沒有要求

 

具體請看下表:

 

 

其他方法:

 

 

 

 

在angularjs中的實戰應用:

首先,你的后台要有相應的支持接口api,其中定義了接口類型(get/post)及其使用方法

 

 

 

一般我們會用到接口測試工具Postman

 

 

 

然后在angular的src/app/index.api.js文件中,定義前端與后台接口的對接方式

首先定義一個factory,其中提供了前端與后台對接的一些方法

(factory方式創建的服務,作用就是返回一個有屬性有方法的對象。相當於:var f = myFactory();)

 

 

 

 

api定義:

 

 

 

實際項目中調用:

 

 

(中間的function即為fb)

注意一開始要在開頭注入(dataService依賴

 

 

 

過程總結:后台(服務器)定義Http請求方法[定義http請求]

 —>前端api.js文件中定義api service方法並注入$http依賴[定義api服務]

 —>在方法中創建api service返回對象,以及定義基地址[定義端口和返回值]

 —>為其返回對象綁定一個又一個http方法(get/post),其中定義它的url、請求頭、回調函數、異常處理等等[定義請求函數]

 —>在項目中通過注入api service方法依賴調用api,從而成功與后台對接[調用函數]

 

 

(回調函數解釋:你到一個商店買東西,剛好你要的東西沒有貨,於是你在店員那里留下了你的電話,過了幾天店里有貨了,店員就打了你的電話,然后你接到電話后就到店里去取了貨。在這個例子里,你的電話號碼就叫回調函數,你把電話留給店員就叫登記回調函數,店里后來有貨了叫做觸發了回調關聯的事件,店員給你打電話叫做調用回調函數,你到店里去取貨叫做響應回調事件。回答完畢。

作者:常溪玲

鏈接:https://www.zhihu.com/question/19801131/answer/13005983

來源:知乎

著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。)

            


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM