不是放入标题的最简单问题。
总之,我的应用程序是建立在nodejs
/expressjs
并建立了对URL的API:
编辑:我使用的是当前的代码是:
$scope.updateProduct = $resource('/api/updateProduct/:product/:param/:value',{},{
query: {method:'GET'},
post: {method:'POST'},
save: {method:'PUT', params: {brand: '@brand', param:'@param', value:'@value'}},
remove: {method:'DELETE'}
});
$scope.updateProduct.save({
product : $scope.post._id,
param: 'likes',
value: $scope.user._id
});
目前它调用/api/updateProduct
而不是/api/updateProduct/<product>/<param>/<value>
,就像它应该/像我在执行$scope.updateProduct.get()
时一样。
在我的控制台我认为(作为一个例子):
PUT /api/updateBrand/Quay%20Eyewear%20Australia/userTags/sunglasses,%20classic 200 30ms - 2.31kb
然而,API不实际访问/没有任何反应。有趣的是,如果我在我的浏览器中访问localhost:5000/api/updateBrand/Quay%20Eyewear%20Australia/userTags/sunglasses,%20classic
,它会发布正确的数据并在我的数据库中更新产品,所以这肯定是调用$resource
的错误。
有趣,谢谢。我摆脱了资源调用中的附加参数,所以它只是$ resource('/ api/updateProduct /:product /:param /:value')。然而,当我执行$ scope.updateProduct.save()时,它会进入POST/api/updateBrand 200 34ms - 2.31kb而不是POST/api/updateBrand/productname/paramater/value 200 34ms - 2.31kb,后端没有任何反应。有任何想法吗? – Jascination
您应该保存参数,方法与粘贴您的问题相同:'$ scope.updateProduct.save({0} {0} {scope.post._id, param:'likes', value :$ scope.user._id });' – Beterraba
我已经这样做了,我会更新上面的问题来澄清一点。 – Jascination