为了账号安全,请及时绑定邮箱和手机立即绑定

jQuery XHR 实现 PUT 或者 DELETE ZF2 REST 服务器数据

jQuery XHR 实现 PUT 或者 DELETE ZF2 REST 服务器数据

沧海一幻觉 2019-04-06 08:31:31
在网上搜了整一下午了,包括看jQuery的官方API说明文档,还是搞不清楚如何在HTML客户端,通过jQuery的XMLHTTPRequest来实现对ZendFramework2REST服务器的PUT和DELETE的请求……自学能力太差,这么简单的问题越搞越糊涂,求高人指点迷津!!!client_delete.html DeletetheBookwithISBN: ISBN: ///$.ajax({ url:'http://library/books', type:'delete' });ZF2Controller部分classBooksControllerextendsAbstractRestfulController{ publicfunctiondelete($id){ //$this->getBooksTable()->deleteRowByPrimaryKey($id); return"Youdeleteabook!"; }}
查看完整描述

2 回答

?
慕勒3428872

TA贡献1848条经验 获得超6个赞

多次测试后决定放弃使用form中的method/_method提交方式。感谢@lanisle最开始的提示:是否支持PUT和DELETE请求取决于浏览器新的方法将使用JS/DOM和jQuery通过button的onclick事件来实现DELETE的提交方式。
下面的代码已经测试可行。JS代码
///
	functionbookDelete(){
//取得用户输入ISBN值
		varisbnValue=document.getElementById("id").value;
//AJAX提交DELETE请求
		$.ajax({
			url:'http://library/books/'+isbnValue,
			type:'delete',
			success:function(data){	
console.log(data);
			},
			error:function(code,message,details){
				console.log(message);
				console.log(code);、
console.log(details);
			}
		});
	}
form内容修改
	

ISBN:

	
                            
查看完整回答
反对 回复 2019-04-06
?
子衿沉夜

TA贡献1828条经验 获得超3个赞

是否支持PUT和DELETE请求取决于浏览器,jquery文档也有标注:type(String):(默认:"GET")请求方式("POST"或"GET"),默认为"GET"。注意:其它HTTP请求方法,如PUT和DELETE也可以使用,但仅部分浏览器支持。一般情况下是需要POST请求配合隐藏域来支持PUT和DELETE的,对于jquery而言,直接附带一个"_method"参数就好了。Goodluck!
                            
查看完整回答
反对 回复 2019-04-06
  • 2 回答
  • 0 关注
  • 267 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信