0

我正在开发像 eBay 这样的 iOS 应用程序。对于这个 Web 服务开发人员正在使用 Magento。他为 Login 开发了 Web 服务。以下是情况:

1)如果我发送有效的登录凭据,他会返回我登录使用的信息作为响应 + 一个标志作为结果 = true & 在这种情况下 http 状态代码是 200。

2)如果我发送了错误的密码,他会返回一个标志,因为结果 = false & http 状态码是 200。

基本上我不想依赖结果标志,因为如果开发人员更改了结果标志名称,那么 iOS 应用程序将无法识别。所以我想遵循http状态码的标准。

我的问题是,在第二种情况下发送 200 作为 http 状态码是否正确?我认为他应该给我发 401 吗?如果我错了,请纠正我。如果我是对的,有没有办法从 php 代码发送 http 状态代码,以便我可以在 iOS 端检查 http 状态代码?

4

2 回答 2

5

您可以通过以下方式在 Magento 中添加自定义响应状态代码,

$this->getResponse()->setHeader('HTTP/1.0','404',true);
$this->getResponse()->setHeader('HTTP/1.0','200',true);

where $this is controller action object, code works in your magento controller

于 2014-06-10T05:54:46.693 回答
1

我的问题是,在第二种情况下发送 200 作为 http 状态码是否正确?我认为他应该给我发 401 吗?如果我错了,请纠正我。

这取决于您的需求。编写规范,然后相应地实施。如果你说401,就拿401。

如果我是对的,有没有办法从 php 代码发送 http 状态代码,以便我可以在 iOS 端检查 http 状态代码?

当然,有。幸运的是,之前有人问过这个问题,所以信息已经在这个网站上,我们不需要再次回答。

于 2013-01-20T08:19:10.193 回答