Im struggeling讓服務器接受我的發佈請求,因爲我想發佈一些數據/ api/kill。MEAN堆棧/ angularjs發佈請求失敗
由於某種原因,它不會工作。我怎樣才能使它工作?
我下載的平均堆棧的最新版本通過此鏈接:https://github.com/dickeyxxx/mean-sample
我試圖編輯文章模塊開始。
var promise = $http.put('/api/kill', null);
響應:
angular.js:11756 PUT SITE:3000/server-error 404 (Not Found)
嘗試二:
var promise = $http.post('/api/kill', null);
回報:
angular.js:11756 POST SITE:3000/api/kill 404 (Not Found)
(僅當路線:
app.route('/api/kill').all(articlesPolicy.isAllowed)
.get(articles.list)
.put(articles.killuserbyid)
所以,如果路線是:
app.route('/api/kill').all(articlesPolicy.isAllowed)
.get(articles.list)
.post(articles.killuserbyid)
它會返回原單:
angular.js:11756 PUT SITE:3000/server-error 404 (Not Found)
MY代碼:
我article.server.routes。 js我確實有:
'use strict';
/**
* Module dependencies
*/
var articlesPolicy = require('../policies/articles.server.policy'),
articles = require('../controllers/articles.server.controller');
module.exports = function (app) {
// Articles collection routes
app.route('/api/kill').all(articlesPolicy.isAllowed)
.get(articles.list)
.put(articles.killuserbyid)
.delete(articles.delete);
// Single article routes
// Finish by binding the article middleware
app.param('articleId', articles.articleByID);
};
我invokeRolesPolicies
在articles.server.policy:
exports.invokeRolesPolicies = function() {
acl.allow([{
roles: ['admin'],
allows: [{
resources: '/api/kill',
permissions: '*'
}]
}, {
roles: ['user'],
allows: [{
resources: '/api/kill',
permissions: '*'
}]
}, {
roles: ['guest'],
allows: [{
resources: '/api/kill',
permissions: '*'
}]
}]);
};
我ArticlesListController
功能列表articles.client.controller:
ArticlesListController.$inject = ['ArticlesService','$scope'];
function ArticlesListController(ArticlesService,$scope) {
var vm = this;
vm.testing = function() {
ArticlesService.test();
}
}
,最後我articleservice功能(articles.client .service)
ArticlesService.$inject = ['$resource','$http'];
function ArticlesService($resource,$http) {
var o = [];
o.test = function() {
console.log("tester..");
var promise = $http.put('/api/kill', null);
promise.then(function(payload) {
console.log(payload.data);
});
}
return o;
}
看起來像是404問題 –
當然@shammon,但如何解決呢? – maria