2014-02-18 49 views
1

我生氣了:我正在使用角度js,我不知道如何正確發佈數據。

我填一些HTML輸入字段,它的值存儲在(前)$ scope.prodotto,我必須的$ scope.productJSON結構發送到一個web服務我」已經寫了。

不幸的是,使用檢查員,我什麼也看不見。

我的意思是:我寫這個:

$scope.salva = function() { 
    console.log($scope.prodotto); 

    $http.post('./service/prodotti/create', $scope.prodotto).error(function(data, status, headers, config){ 
     console.log($scope.prodotto); 
    }); 

}; 

薩爾瓦被綁定到一個按鈕。通過ng-click參數。當我點擊按鈕時,會觸發「salva」。 我看到$ scope.prodotto被填充了正確的值(感謝console.log),但是......服務器什麼也沒收到,瀏覽器也沒有發送任何東西(用chrome的檢查器檢查req,顯示一個空的array)

那麼我做錯了什麼?

在此先感謝!

+0

你的角度看起來不錯。你的服務器路徑中的「。」是什麼? – Fresheyeball

+0

這是從我正在編寫的應用程序的根目錄開始的相對路徑,服務在哪裏。是正確的(我想),因爲所有獲取請求的作品就像一個魅力 –

回答

1

我找到了解決方案。

不幸的是,變量 「$ scope.prodotto」 被初始化爲數組:

$ scope.prodotto = [];

解決方案很簡單。將其初始化爲對象:

$ scope.prodotto = {};

就是這樣。

0

如果您的原始帖子出現錯誤,您只能檢查ajax調用。您需要使用如下成功回調:

$scope.salva = function() { 
    console.log($scope.prodotto); 

    $http.post('./service/prodotti/create', $scope.prodotto) 
    .success(function(data, status, headers, config){ 
     console.log($scope.prodotto); 
    }); 
    .error(function(data, status, headers, config){ 
     console.log($scope.prodotto); 
    }); 

}; 
+0

我知道它兄弟,謝謝,但重點是,檢查來自Chrome的請求,我的帖子請求是空的。這是重點。 :) –

+0

對不起,這可能是幫助 - > http://victorblog.com/2012/12/20/make-angularjs-http-service-behave-like-jquery-ajax/ – koolunix