如何:REST终结点返回空对象

时间:2018-01-06 作者:felixlinker

我想实现一个自定义REST端点,它也可以返回一个空对象。但是,如果它应该返回空对象,则回调返回的空关联数组将转换为空数组。

如何强制端点将数组转换为json_encode 通过设置JSON_FORCE_OBJECT 旗帜

function rest_cb() {
    return array();  // this will result in the REST response [] but {} is required
}

function on_rest_api_init() {
    register_rest_route(\'ns/v1\', \'empty-object\', \'rest_cb\');
}

1 个回复
最合适的回答,由SO网友:felixlinker 整理而成

找到了解决方案:通过将返回值强制转换为对象,可以确保在空数组的情况下,在REST请求时返回空对象。

在我的初始示例的基础上,此代码可以工作:

function rest_cb() {
    return (object) array();
}

结束