1. 程式人生 > >Restful的GET、POST、PUT、DELETED、PATCH幾種操作

Restful的GET、POST、PUT、DELETED、PATCH幾種操作

HTTP Method 與 CURD 資料處理操作對應

HTTP方法

資料處理

說明

POST

Create

新增一個沒有id的資源

GET

Read

取得一個資源

PUT

Update

更新一個資源。或新增一個含 id 資源(如果 id 不存在)

DELETE

Delete

刪除一個資源

PATCH是POST的補充,用來對已知資源進行區域性更新 

restful通過RestTemplate 物件來呼叫遠端服務

@Autowired
private RestTemplate restTemplate;


restTemplate.getForObject()有三個過載方法

    restTemplate.getForObject(String url, Class<String> responseType)

    restTemplate.getForObject(String  

url, Class<String> responseType, Object...uriVariables)

    restTemplate.getForObject(String url, Class<String> responseType, 

                                            Map<String,Objuct> uriVariables)

第一個引數是請求路徑,第二個引數是返回值型別的Class,第三個引數是請求路徑中的引數 ?name={name}

restTemplate.postForObject()也有三個過載方法

    restTemplate.postForObject(String url, Object info

                                            Class<String> responseType)

    restTemplate.postForObject(String url, Object info,

                Class<String> responseType, Map<String,Objuct> uriVariables)

    restTemplate.postForObject(String  url, Object info,

                Class<String> responseType, Object...uriVariables)

post類似get,第二個為POST請求的請求體中的引數實體

restTemplate.put()三種過載

    restTemplate.put(String  url, Object info);

    restTemplate.put(String  url, Object infoMap<String,Objuct> uriVariables);

    restTemplate.put(String  url, Object info, Object...uriVariables);

restTemplate.delete()三種過載

    restTemplate.delete(String  url);
    restTemplate.delete(String  url, Map<String,Objuct> uriVariables);
    restTemplate.delete(String  url, Object...uriVariables);

restTemplate.patch()三種過載

    restTemplate.patchForObject(url, request, responseType)

    restTemplate.patchForObject(url, request, responseType, uriVariables)
    restTemplate.patchForObject(url, request, responseType, uriVariables)