在Web開發中,Controller是一個非常重要的組件,它通常被用來處理請求和響應。假設我們需要一個Controller來處理一個POST請求,該請求需要傳入一個JSON作為參數。下面讓我們來看一下如何實現:
@PostMapping("/processJSONRequest") public ResponseEntity<Void> processJSONRequest(@RequestBody MyRequestDTO myRequestDTO) { // 對myRequestDTO進行處理 return ResponseEntity.ok().build(); }
我們可以看到,這個Controller使用了注解@PostMapping("/processJSONRequest"),表示它接受一個POST請求,請求路徑為/processJSONRequest。同時,它還使用了注解@RequestBody,這個注解的作用是將請求中的JSON轉化為Java對象,這里的Java對象是MyRequestDTO類型。而方法的返回類型是ResponseEntity<Void>,它表示Controller會返回一個HTTP響應,響應狀態碼為200(ok)。
如果我們需要給Controller傳遞一個JSON參數,我們可以使用終端發送一個POST請求,其中請求體包含JSON:
curl -X POST \ http://localhost:8080/processJSONRequest \ -H 'Content-Type: application/json' \ -d '{ "name": "Tom", "age": 18 }'
這里使用了curl命令模擬發送POST請求,其中-H 'Content-Type: application/json'表示請求體的格式為JSON。在請求體中,我們傳入了一個JSON,包含"name"和"age"兩個字段并分別對應值"Tom"和18。當Controller接收到這個請求時,它會將請求體中的JSON轉化為MyRequestDTO類型的對象,我們可以在處理請求時對這個對象進行操作。
上一篇vue 開發 跨域