0
我最近決定使用$resource
進行REST服務,但我很快就遇到了麻煩。我有一個簡單的網址:
/R /接口/啓動/主動/地址/:地址
但稱它在單元測試使它失敗:
// expected: POST /r/interface/activate/false/addr/123
// got : POST /r/interface/activate/false/addr/@address
我定義的資源是:
module.factory('NetworkInterfaceActivationService', function ($resource) {
return $resource("/r/interface/activate/:active/addr/:address", {}, {
activate:{method:'POST', params:{active:"true", address:'@address'}, isArray:false},
deactivate:{method:'POST', params:{active:"false", address:'@address'}, isArray:false}
});
});
這就是我稱之爲我的服務!
$scope.deactivateNetworkAddress = function (address) {
NetworkInterfaceActivationService.deactivate({address:address});
};
我錯過了什麼嗎?
您可以發佈一個蹦牀或小提琴,所以我們可以玩嗎?但是我的直覺告訴你不要在params中使用'@address',因爲它已經在URL中了。順便說一句,你不應該在你的單元測試中使用實際的HTTP方法;你應該用ngMockE2E來嘲笑他們。 –
我試過了,只需點擊我的表單並從瀏覽器中查看網絡。 – Adelin
就像我說過的,如果你可以發佈一個plunker或小提琴,我可以看看代碼。 –