話說angular的傳參轉變為json格式,而又需要springMVC有相關的實體類別才能用@requestBody去接收。但是如果傳的是一般的參數呢,例如一個數組,一個數字id?
當然,傳一個數字id可以從請求參數路徑傳過去。但是,就是傳一般的隨機的參數,例如data={“xx”,xxx}
和明顯,springMVC端是不能像接收jquery時候用@requestParam接收的。
網路上看了一大片,說要改請求的header的contentType什麼的,可是,設定了也沒用.......怎麼辦?
$http({
url:"ts",
data={“xx”,xxx},
type:"POST"
})
........
spirngMVC端如何接收data={“xx”,xxx},
巴扎黑2017-05-15 17:03:04
前台代碼:
angular.module('app')
.factory('Email', function ($resource) {
return $resource('api/emails/:id', {}, {
'query': { method: 'GET', isArray: true},
'get': {method: 'GET'},
'update': { method:'PUT' }
});
});
後台接收
@RequestMapping(value = "/emails",
method = RequestMethod.POST,
produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<EmailDTO> createEmail(@RequestBody EmailDTO emailDTO) {.....}
PHP中文网2017-05-15 17:03:04
問題不是angular怎麼傳參數到後台,主要是看你後台怎麼實現的。後台給一個介面對於angular就夠了,angular直接$http調後台介面就能把參數傳給後台了。
$http.get("mainUrl"+parameter).then();
這樣就可以把參數parameter傳給後台了,至於是get還是post或者其他的主要還是看後台。