我有一个主干模型,我正试图销毁它,但没有随请求发送任何参数,因此服务器返回一个“Delete 404 not found”错误。
我承认我的结构有点奇怪,因为我正在根据项目是否已经在列表中创建/销毁它们。
var list_item = new MyApp.Models.ListItem({item_id: this.model.id, group_id: this.model.group_id}); if($(e.currentTarget).hasClass('add')){ list_item.save(list_item, { success: function(response){ this.model.attributes.addedtolist_id = response.id console.log(this.model); }, error: function(){ alert('could not save item'); } }); } else if($(e.currentTarget).hasClass('remove')) { list_item.id=this.model.addedtolist_id; list_item.attributes.id = this.model.addedtolist_id; console.log(list_item); list_item.destroy({ success: function(){ alert('delete'); }, error: function(){ alert('could not uncheck'); } }); }
销毁前列表\u项的控制台输出为
_escapedAttributes: Object
_previousAttributes: Object
_setting: false
attributes: Object
id: 2
item_id: 66
group_id: 64
__proto__: Object
cid: "c23"
id: 2
__proto__: q
但是,当我查看与delete请求一起发送的头时,我没有发送任何参数。
-----------------------正在发送更新参数,仍返回404--------------
根据Yaroslav的建议,我已经在销毁方法中添加了一个头,但是我的rails控制器仍然返回一个DELETE 404未找到的错误。我只是想在毁掉它之前归还这个列表,以确保我得到了正确的。
我的控制器是
def destroy
listitem = Listitem.find(params[:id])
return render :json => listitem
end
list_item.destroy( **l** {
success: function(){
alert('delete');
}, ... );
这是问题的第一位吗?
您希望发送什么参数?Destroy仅通过url发出http删除请求,默认情况下不包含正文或任何附加头。params参数传递给jquery ajax函数,因此您可以在那里指定头:
model.destroy({
...
headers : {
your_header : 123
}
})
我猜您正在将模型中的url
设置为字符串:
Backbone.Model.extend({
url: '/list_items',
//...
});
这将告诉主干网使用/list\u items
作为所有操作的URL。您应该使用以下函数:
url: function() { return '/list_items/' + encodeURIComponent(this.id) }
或者使用带有urlRoot
的字符串,让默认的url
函数添加id
:
urlRoot: '/list_items'
我正在尝试使用Chrome扩展Postman测试一个简单的PHP页面。当我发送URL参数时,脚本运行良好(例如变量在参数中可用)。当我将它们作为参数发送时,参数仅包含。 剧本: 我错过了什么?
我有REST API。我在找客户。我将spring security配置为通过rest服务进行身份验证。我的REST API控制器 当我用postForObject调用我的API时,API的控制器中没有接收到任何参数。请给我一些建议,如何使它发送数据到API。多谢了。
问题内容: 我遇到的问题是,当我以极低的频率(<2%)使用jquery ajax post时,post参数永远不会到达服务器。我确实在访问日志中看到了发帖请求。它似乎仅在IE上发生(我在日志中的7、8和9上已经观察到了)。 当我将呼叫从“发布”类型切换为“获取”类型时,问题就消失了。 有没有人见过这种奇怪的行为在IE?谢谢! 我已经在各种ajax调用中看到了这一点,但这是一个典型的例子: 更新 :
我有下面的代码(谷歌的凌空库)向我的php服务器发送POST请求并获取信息。我没有在php中检查isset($\u POST['id')就尝试了代码,代码运行良好。当我开始检查时,php将跳过if语句并转到else,这意味着代码没有正确发送参数。我怎样才能解决这个问题? 我还尝试了以下代码: 但是我仍然得到同样的结果。
问题内容: 我有一个用于更新数据库表的对象,但是它不能正确解释我的空值。 这是SQL: 我已经尝试过像这样可以为空的null合并参数,但是我没有取得任何成功。除非另有说明,否则所有参数均为字符串: 我得到这样的异常: 在将每个参数添加到SqlCommand对象以设置DbNull.Value(如果参数值为null)之后,我还尝试遍历每个参数,如下所示: 但是,这种方法导致异常: 将空参数传递给a的最
在我的android应用程序中,我发送了一个截击POST请求,但它不起作用。相反,它发送的是空参数。 如果我输入url(https://blogurl.com/wp-json/wp/v2/comments?post=20081 Postman为JAVA OKHttp生成的代码如下: 这是我用来发送POST请求的代码: 就像我之前说的,请求是真的,但是参数没有随请求一起发送。 应用他的解决方案后,我