慧
我正在服务器端使用angular.js和node.js(Express.js)构建一个应用程序。
由于某些原因,我在处理删除请求时遇到问题。没有人会进入服务器端。
这是我的angular.js资源代码:
$scope.deleteProject = function(projectName){
var postData = {username: 'name', projectName: projectName};
Project.deleteProject.delete({}, postData,
function(res){
alert('Project Deleted');
},
function(err){
alert(err.data);
});
}
在服务器端,我有这个:
var deleteProject = function(req, res){
console.log(req.body);
console.log(req.params);
if (req.body.projectName){
//do something
return res.send(200);
}
else
return res.send(400, 'no project name was specified');
}
现在由于某种原因根本没有身体!它是空的。我已将路线定义为app.delete。
如果我将node.js中的路由更改为post,将其更改为angular.js以保存,则效果很好。
我在这里想念什么(敲头)。
谢谢。
根据此堆栈溢出问题和$http
服务源代码,使用的DELETE
请求$http
不允许在请求的正文中发送数据。
对于是否应允许请求正文,DELETE请求的规范有些含糊,但是Angular不支持它。
这允许请求主体的唯一方法是POST
,PUT
和PATCH
。因此,问题不在您的代码中的任何地方,而是在Angular的$http
服务中。
我的建议是使用泛型$http(...)
函数并传递适当的方法:
$http({
method: 'DELETE',
url: '/some/url',
data: {...},
headers: {'Content-Type': 'application/json;charset=utf-8'}
})
问题内容: 我查看了用于$ resource的AngularAPI,但没有找到将s发送到RESTful服务的方法。 我知道使用$http方法是可能的,所以,也可以使用吗? 显然,这是的选项。 动作 – {string} –动作的名称。该名称成为资源对象上方法的名称。 方法 – {string} – HTTP请求方法。有效方法为:GET,POST,PUT,DELETE和JSONP params –
我遇到了一个奇怪的问题,我不明白: 当我删除我的文件appender时,它会阻止我登录到我的服务器,即使文件appender不应该负责将任何内容登录到服务器;这项任务应该只属于我的GELF appender。 下面的代码可以很好地登录到我的控制台和服务器 JAVA XML 但是,当我删除这个 和 它不再向我的服务器记录任何内容。 文件附件和记录器不应该只登录到文件而不是服务器吗?如果是这样,为什么
我的效果在出错时,调用服务中的方法来显示对话。当对话完成时,它会将结果放入可观察的。 我有一个组件正在监听该服务中的可观察内容。问题是,组件第一次侦听服务,然后什么也听不到。 我正在设置该主题以避免收到错误消息,即第一次this.errorService.errorExist$没有返回任何内容。 错误服务 成分
问题内容: 最近5个小时,我一直在尝试将json对象发布到PHP脚本中。我已经阅读了所有文档,似乎代码应该可以,但事实并非如此。发出并接收到请求,但是我无法访问发布的json数据,甚至不知道它是否已正确发送。我不断得到一个空的php数组,而不是json数据。 这是php脚本(test.php) 我正在使用来自https://github.com/pokeb/asi-http- request.gi
问题内容: 我有使用Express和Connect中间件的功能齐全的用户注册/身份验证系统。 唯一的问题是,每次执行服务器重新启动时,会话都会中断。 https://github.com/remy/nodemon-并且nodemon每次检测到文件更改时都会重新启动node.js。 如何进行持续性会话? 问题答案: 就像您的代码告诉您正在使用MemoryStore一样。这是易失的,重启后会清除。我建