本系列主要翻譯自《ASP.NET MVC Interview Questions and Answers 》- By Shailendra Chauhan,想看英文原版的可訪問http://www.dotnettricks.com/free-ebooks自行下載。該書主要分為兩部分,ASP.NET MVC 5、ASP.NET WEB API2。本書最大的特點是以面試問答的形式進行展開。通讀此書,會幫助你對ASP.NET MVC有更深層次的理解。
由于個人技術水平和英文水平也是有限的,因此錯誤在所難免,希望大家多多留言指正。
Q1. 什么是REST?
Ans. REST是 Representational State Transfer(表述性狀態(tài)傳遞)的簡稱。是一項用于分布式環(huán)境數據交換的協(xié)議。
REST是一種架構風格,它將每個服務對待為資源并通過Http協(xié)議方法(GET、POST、PUT、DELETE)獲取數據。
REST風格的架構包含客戶端和服務端。
客戶端初始化請求到服務器,服務器負責處理請求并返回響應。
這些請求和響應都是圍繞這些資源的表示形式進行傳遞。
Q2. 解釋下REST原則?
Ans. REST是一系列原則,用來定義web標準,比如HTTP、URIs 如何被使用。
主要有以下5條重要的REST原裝:
AddressableResources(可訪問的資源) - 每一個資源都應該能被URI(唯一標識符)確定。
Simple and Uniform Interfaces(有一致接口) - REST是基于HTTP協(xié)議的,使用HTTP GET, POST, PUT, DELETE
來執(zhí)行操作。使得REST簡單一致。
RepresentationOriented(面向表述) - 資源的表現形式可以交換的。GET用來獲取資源的某種表現形式,POST用來傳遞資源到服務器以至于底層資源能夠被改變。Representation可以有很多種表現形式,比如XML、Json等。
Communicate Stateless(無狀態(tài)通信) - 一個應用程序可以擁有狀態(tài)但是沒有客戶端會話數據存儲在服務器。任何會話類型的數據應該在客戶端保存和處理,只有在每次請求中按需傳遞到服務器。
Cacheable(可緩存) - 客戶端應該能夠緩存響應以供后續(xù)使用。
Q3. REST和 SOAP間的區(qū)別是什么?
Ans. 詳見下表:
SOAP | REST |
---|---|
SOAP 是 Simple O
我想了解如何學習 |