如何不发送回复正文

时间:2013-08-09 11:59:51

标签: php restler

我正在尝试使用http状态代码201 Created和Location:header从我们的api发回标头响应。

无论我做什么,我都会得到一个反应机构,这是我不想要的。

如果我返回一个空字符串(返回“”;),restler会将字符串'“”放在响应正文中。如果我返回null或者根本没有返回任何东西,那么restler将把字符串'null'放在响应体中。

如何告诉Restler 发送除标题之外的任何内容?

1 个答案:

答案 0 :(得分:1)

更新: -

最新发布的Restler 3 RC4。返回null会为响应发送空体

可以通过设置

来更改此行为
Defaults::$emptyBodyForNullResponse = false;

您可以使用@status评论将响应代码设置为201

用于设置位置标题的

和@header注释

对于旧版本,请使用下面描述的技术


从api方法中,使用标题函数设置状态和位置标题,然后按die或exit

header("HTTP/1.0 201 Created");
header('Location: http://api.example.com/item/45');
die();

这是一个非常有效的用例,要求更好的方法,我们将很快用这些解决方案更新这个答案

感谢您对Restler的贡献:)