2

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

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

如果我返回一个空字符串(返回 "";),restler 会将字符串 '""' 放入响应正文中。如果我返回 null 或根本不返回任何内容,restler 会将字符串“null”放入响应正文中。

我如何告诉 Restler除了标头之外不要发送任何内容?

4

1 回答 1

1

更新 :-

使用最新版本的 Restler 3 RC4。返回 null 为响应发送空正文

可以通过设置更改此行为

Defaults::$emptyBodyForNullResponse = false;

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

和 @header 用于设置位置标头的注释

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


从您的 api 方法中,使用 header 函数设置状态和位置标头,然后使用 die 或 exit

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

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

感谢您为 Restler 做出贡献 :)

于 2013-08-10T00:50:25.310 回答