zend-framework - 用于 POST 和 PUT 方法的基于 Zend 的 REST URI

标签 zend-framework rest post

这篇文章是对上一篇文章的后续问题:

Android RESTful Web application using Zend Framework

我已经编写了一个基于 Zend Framework(版本 1.11.11)的 Web 应用程序,我想使用相同的后端代码来编写此应用程序的移动版本 (Android)。为实现这一点,我想以 XML 和 JSON 的形式获取 Controller 中每个操作的响应 - 对于基于移动的应用程序。

使用上面链接中提供的答案,我能够通过使用 AjaxContext 帮助器来获取 XML 和 JSON 响应。我在 init 方法中为所需的操作将上下文设置为 json,并且我得到了所需的 json 响应。

现在我有另一个挑战。如何从 URL 知道给定的操作是 GET 还是 POST 请求?我是否必须将其添加为查询参数?这是正确的方法吗?

例如,对于用户 Controller 中的登录操作:URL 将是:[链接] ( http://localhost/user/login ) 但是在 loginAction 中,我检查给定的请求是否是帖子,并且仅当请求是帖子时才进行身份验证。所以网址:http://localhost/user/login?format=xml将始终向我返回 GET 请求的响应,因为无法知道该请求是 GET 还是 POST。请帮忙。

谢谢。 阿比拉什

最佳答案

就像你添加的格式参数一样,对请求做同样的事情。使用“方法”参数来决定它是什么类型的请求。或者你也可以做的是

 $this->getRequest()->isPost(); //create
$this->getRequest()->isGet();   //read
$this->getRequest()->isPut();   // update
$this->getRequest()->isDelete();  // delete

关于zend-framework - 用于 POST 和 PUT 方法的基于 Zend 的 REST URI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9901855/

相关文章:

php - PHP Storm 中的帖子出现奇怪问题

php - 将 PHP 中的 $_POST 变量传递给由 exec() 函数运行的 C++ 程序

mysql - Zend_Db查询Mysqli准备错误: Operand should contain 1 column(s)

google-app-engine - 谷歌翻译获取同义词和例子

jquery - 我如何在 Django 中使用 jQuery/Ajax 进行 POST?

http - 如果某些参数不是无效的,我应该响应什么http代码?

rest - HTTP 状态 400 验证与验证

php - Zend Framework 2,教程中的 "resolves to invalid controller class or alias"博客模块

php - Zend_Date : How to get the date of an upcoming day?

ajax - Zend Framework::Ajax 请求