2016-07-21 38 views
0

我是新來的角js所以請忍受我。如何從角度js中的REST式服務中檢索數據作爲發佈請求?

我有一個後臺休息的實現是這樣的:

@RequestMapping(value = "/myurl/url", method = RequestMethod.POST) 
MessageQueueResponse getInboundQueueMessages (@RequestParam(value = "request", required = true) MessageQueueRequest request) 
{ 
     MessageQueueResponse response = messageQueueServiceImpl.searchInBoundMessageQueue(request); 
     return response; 
} 

我使用這個代碼來調用從前端這項服務,但我得到400錯誤的請求爲:

var mydata = [ 
    { 
     "A" : "data1", 
     "B" : "data2", 
     "C" : "data3" 
    } 
]; 

var jsonData ; 
    $http({ 
     method: 'POST', 
     url: 'myurl/url', 
     data: JSON.stringify(mydata), 
     headers: {'Accept': 'application/json', 'Content-Type': 'application/json'} 
    }).success(function(data){ 
     this.data.store = data; 
    }).error(function(){ 
     alert("error"); 
    }); 

我無法弄清楚我出錯的地方。

+0

客戶端代碼似乎沒問題,後端的@RequestParams看起來很腥。 – asenovm

+0

如果不將數據串聯起來會發生什麼?我認爲你不需要那樣做。 – DerekMT12

+0

我已將其刪除。仍然得到相同的錯誤。 – Avneesh

回答

0

我沒有足夠的聲望來添加評論,因此添加爲答案。抱歉。

博客顯示瞭如何將JSON數據發佈到Spring MVC後端。 Blog Link。 您可以嘗試刪除JSON.stringify並直接發送對象。

0

$http有一個post方法,可以非常方便地將數據發送到服務器。

$http.post('myurl/url', mydata) 
    .success(function(data){ 
     this.data.store = data; 
    }).error(function(){ 
     alert("error"); 
    }); 

您可以在AngularJS: API: $http

0

閱讀更多關於它有一個一些錯誤: - 上面的JSON對象是數組類型。這不應該是這種情況。

另外,數據不需要更嚴格。它會自動轉換。

相關問題