Php 平静的流动?
所以 我已经读了一点,它背后的想法听起来不错,但问题是,它能很容易地集成到网页的标准流程中吗 例如,一个用户创建了某种项目、一篇博客文章或你拥有的东西,现在他想删除它,所以他单击页面上的“删除”链接。现在怎么办?我们如何发出删除请求,例如,Php 平静的流动?,php,rest,Php,Rest,所以 我已经读了一点,它背后的想法听起来不错,但问题是,它能很容易地集成到网页的标准流程中吗 例如,一个用户创建了某种项目、一篇博客文章或你拥有的东西,现在他想删除它,所以他单击页面上的“删除”链接。现在怎么办?我们如何发出删除请求,例如,http://mysite.com/posts/5?我们如何处理这个请求?我没有使用cURL或任何东西的经验,但从外观上看,我必须cURL\u init('http://mysite.com/posts/5)然后施点魔法。但我会把剧本放在哪里呢?这将不得不在另
http://mysite.com/posts/5
?我们如何处理这个请求?我没有使用cURL或任何东西的经验,但从外观上看,我必须cURL\u init('http://mysite.com/posts/5)
然后施点魔法。但我会把剧本放在哪里呢?这将不得不在另一页上,这将打破休息的整个想法。然后我会GET
ing另一个页面,这会DELETE
我原来想要的页面
这就是人们很少使用REST的原因,还是有一种很好的方法可以做到这一点
看来我需要澄清一下。人们建议我在URL中加入“删除”和“发布”等词。我相信REST规定我们对每个资源都有一个唯一的URL,但对该资源上的每个操作都没有。我假设这也意味着每个资源只有一个URL。i、 e.我希望能够从一个URL(通过发送DELETE、PUT、post或GET)中删除或查看特定帖子的内容,而不是使用其他参数的不同URL。根据您使用的框架,有一些模型可以确定如何处理每个资源的操作 基本上,使用另一个参数,您希望向资源发送要执行的操作。例如,该参数可以通过AJAX/JS发送 如果您想在不使用javascript/ajax的情况下执行(如果禁用了),那么表单POST方法也可以工作,向资源发送额外的操作参数 当然,在这两种情况下,你都必须考虑安全性,并确保他们不发送资源他们不应该采取的行动。确保在后端执行检查,并发送适当的响应或错误消息 客户端脚本,无论是通过JS/Ajax还是form POST或其他方法,都需要额外的安全预防措施
根据海报上的说明进行编辑。根据您使用的框架,有一些模型可以确定如何处理每个资源的操作 基本上,使用另一个参数,您希望向资源发送要执行的操作。例如,该参数可以通过AJAX/JS发送 如果您想在不使用javascript/ajax的情况下执行(如果禁用了),那么表单POST方法也可以工作,向资源发送额外的操作参数 当然,在这两种情况下,你都必须考虑安全性,并确保他们不发送资源他们不应该采取的行动。确保在后端执行检查,并发送适当的响应或错误消息 客户端脚本,无论是通过JS/Ajax还是form POST或其他方法,都需要额外的安全预防措施
根据海报上的说明进行编辑。一种方法是使用DELETE方法进行AJAX调用。一种方法是使用DELETE方法进行AJAX调用。我认为REST很少使用。你现在正在使用它,在StackOverflow上。就您的具体示例而言,您可以在支持XMLHttpRequest的浏览器中通过XMLHttpRequest发送删除请求。当JS关闭时,或者对于不兼容的浏览器,您可以执行以下操作: 职位 这并不理想,但仍然比许多网站更为宁静
编辑:改为POST我认为REST很少使用。你现在正在使用它,在StackOverflow上。就您的具体示例而言,您可以在支持XMLHttpRequest的浏览器中通过XMLHttpRequest发送删除请求。当JS关闭时,或者对于不兼容的浏览器,您可以执行以下操作: 职位 这并不理想,但仍然比许多网站更为宁静
编辑:改为POSTFacebook的REST服务器是一个伪服务器,你可以像他们一样,请求POST方法:POST、GET等。该操作和该请求所需的其他值 为什么我说facebook是一个伪REST服务器休息的原则之一是
- 使用超媒体链接中使用的通用语法,每个资源都是唯一可寻址的
编辑:刚刚发现,看起来很有趣。玩得开心 Facebook的REST服务器是一个伪服务器,你可以像他们一样,请求post方法:post、GET等。请求所需的操作和其他值 为什么我说facebook是一个伪REST服务器休息的原则之一是
- 使用超媒体链接中使用的通用语法,每个资源都是唯一可寻址的
编辑:刚刚发现,看起来很有趣。玩得开心 不要想得太多。您将无法使用直接的HTML表单和浏览器实现这一点。Ajax可以做到这一点 我希望能够删除以查看 某篇文章的内容 一个URL(通过发送删除、, PUT、POST或GET),而不是不同的URL 带有附加参数 删除以查看?我不确定我是否理解它,但您的删除应该通过标题完成,而不是通过URL。delete方法不应返回视图。REST是一项服务,并非所有请求都是为了视觉消费。不要
POST http://mysite.com/Trashcan?resourceUrl=/Customer/75
POST http://mysite.com/Printer/75/PrintQueue?url=http://mysite.com/Document/xyz
POST http://mysite.com/CurrentLogins?user=bob
POST http://mysite.com/QueryProcessor?query=FindMyInformation
POST http://mysite.com/SearchEngine?searchTerms=cat,blue,furry
POST http://mysite.com/OrderProcessor?cart=http://mysite.com/user/2323/cart