2014-11-20 53 views
0

我想POST一個字符串數組從jQuery到MVC的春季服務器。POST字符串數組從AJAX jQuery到MVC春季服務器沒有從服務器的響應

POST碼:

var respostas=["hello","hi","bye"]; 
     var urlprova = 'getlistmap'; 
     $.ajax({ 
     type: 'POST', 
     url: urlprova, 
     dataType: 'json', 
     data: JSON.stringify(respostas), 
     success: function (data) { 
      alert("updated successfully"); 
      }, 
     error: function (xhr, ajaxOptions, error) { 
      alert(err.status); 
      alert('Cannot update, ' + err.responseText); 
     } 

});

控制器的方法:

@RequestMapping(value="getlistmap", method = RequestMethod.POST) 
    public @ResponseBody String getListMapfromOneProject(HttpServletResponse response, Principal p,@RequestBody String respostas) throws IOException { 
     System.out.println("A AJAX call has been detected!"); 
    return "ok!"; 
    } 

我已經嘗試了很多片,從谷歌代碼,但其中任何一個,似乎工作的,所以我打以上,我認爲是最好的選擇。

任何意義?

UPDATE:這@Guffa使我修正後,這個帖子的迴應是,HTTP 403 Forbidden他說,這個問題可能是因爲服務器沒有地圖的網址,但我們可以comprove,這是映射:

二○一四年十一月二十○日18:44:53.427 INFO 6724 --- [主要] oswshandler.SimpleUrlHandlerMapping:映射URL路徑[/]上式的處理程序[類org.springframework.web.servlet.resource .DefaultServletHttpRequestHandler] 2014-11-20 18:44:53.466 INFO 6724 --- [main] swsmmaRequestMappingHandlerMapping:映射「{[/ login],methods = [GET],params = [],headers = [],消耗= [],產生= [],自定義= []}「到public org.springframework.web.servlet.Mode lAndView palmaslab.mapas.controller.myController.login() 2014-11-20 18:44:53.466 INFO 6724 --- [main] swsmmaRequestMappingHandlerMapping:映射「{[/ getlistmap],methods = [POST],params = public static java.lang.String palmaslab.mapas.controller.myController.getListMapfromOneProject(javax.servlet.http.HttpServletResponse,「=」),headers = [],consumes = [],produce = [],custom = [] java.security.Principal,java.lang.String)拋出java.io.IOException 2014-11-20 18:44:53.467信息6724 --- [main] swsmmaRequestMappingHandlerMapping:映射「{[/ addProjectPostoSaude],方法= public,org.springframework.web.servlet.ModelAndView palmaslab.mapas.controller.myController = [GET],params = [],headers = [],consumes = [],生成= [],custom = []}。 addProject()

...

回答

1

您得到迴應或錯誤。如果您查看錯誤控制檯,那麼很可能會在那裏找到一條錯誤消息,指出您正在嘗試使用未定義的變量err

更正錯誤處理程序,你會看到你會得到什麼錯誤:

error: function (xhr, status, error) { 
     alert(status); 
     alert('Cannot update, ' + error); 
    } 
+0

好的,謝謝你!錯誤的反應是'無法更新,Forbidden'。任何想法? – 2014-11-20 20:46:30

+0

@AlbertoCrespo:這意味着服務器以「HTTP 403 Forbidden」響應。可能的原因是映射與請求不匹配,因此沒有處理請求的操作。 – Guffa 2014-11-20 20:55:13

+0

該URL似乎被映射。我已經更新了這個問題。您可以看到該URL顯示爲在MVC Spring Server中映射的。 – 2014-11-21 12:27:21