Spring kontrol eşleme şu var 400 kötü isteği ve uygulama/x-www-form-urlencod v/s uygulama/json:Yay kontrol
@RequestMapping(value="/isSomethingHappening", method = RequestMethod.POST)
public @ResponseBody JsonResponse isSomethingHappening(HttpServletRequest httpRequest,@RequestParam("employeeId") String employeeId,
ModelMap model) throws IOException{
Olarak aşağıdaki Bu çağırmak sonra 400 yanıt almak.
var requestData = {"employeeId":XYZ.application.employeeId};
XYZ.network.fireAjaxRequestAsync("application/json", "forms/testing/isSomethingHappening", requestData, function(response, status, xhr){
Ancak bunu aşağıda olduğu gibi çağırırsam, başarı yanıtı alırım.
var requestData = {"employeeId":XYZ.application.employeeId};
XYZ.network.fireAjaxRequestAsync("application/x-www-form-urlencoded", "forms/testing/isSomethingHappening", requestData, function(response, status, xhr){
ben düzeltme anladım ama benim isteği veri
var requestData = {"employeeId":XYZ.application.employeeId};
değişmedi ve ben sadece içerik türünü değiştirdi nesne zaman İlki bana hata verdi anlamak mümkün değilim.
Benim için application/json
daha uygun bir içerik türü görünüyor çünkü istek verilerim bir JSON nesnesi. Benim denetleyicisi haritalama olarak altında olduğu
Ayrıca, diğer örneklerini vardır:
@RequestMapping(value = "/getOnFlyResults", method = RequestMethod.POST)
public @ResponseBody JsonResponse getOnFlyResults(HttpServletRequest httpRequest,
@RequestBody testingRequestVO testingRequestVO, ModelMap modelMap) throws IOException{
Ve bu çağırma için ben aşağıdaki gibi isteği göndermek:
var requestData = {"employeeId":XYZ.application.employeeId,
"fName":XYZ.application.fName,
"lName": XYZ.application.lName,
"telephoneNumber":telephoneNumber,
"testMode":XYZ.constant.onFly};
XYZ.network.fireAjaxRequestAsync("application/json", "forms/testing/startTest", JSON.stringify(requestData), function(response, status, xhr){
Bilmiyorum Bunu neden yapmazsam, JSON.stringify(requestData)
'u kullanarak verileri dizmek zorunda olduğumu anlıyorum. Bunu yapmazsam 400 alırım.
Bir kez dize sonra bir dize olur o zaman benim içerik türü text/plain
olmalı ama application/json
ile uyumludur. Lütfen kod düzeltmelerini biliyorum, ancak kavramı anlamak istiyorum. this'u okudum ve bu kavramın ayrıntılarını ve sahip olduğum sorguları açıklamıyor.
Uygulamanız için bağımlı olarak yapılandırılmış jackson kitaplığına sahip misiniz? – pczeus
@pczeus Nops ... – hagrawal
Maven Kullanımı? Gradle? – pczeus