繁体   English   中英

Restler可选字符串参数

[英]Restler optional string parameter

我想在Restler修补方法中将参数标记为可选参数,并且该参数的类型为string,但是我不知道该怎么做。 如果我将$description = null作为参数,则路由器将失败,并显示一条消息, description是必需的参数。

我不能只使用一个空字符串,因为这是一个PATCH类型的方法,因此我必须能够通过传递一个空字符串与一个null值来区分它们,从而希望通过使用空白字符串来消除描述,这意味着它们没有通过在任何更新。

保持$descriptionnull很好。 只要确保所有可选参数出现在api方法中的必需参数之后即可。 这是一个PHP限制。

这是我测试的方式

composer create-project restler/application=dev-basic rest

创建一个基本的Restler项目。 然后编辑rest / src / Home.php以添加补丁方法

<?php

class Home
{
    public function index()
    {
        return [
            'success' => [
                'code'    => 200,
                'message' => 'Restler is up and running!',
            ],
        ];
    }

    public function patch($name, $description = null)
    {
        return compact('name', 'description');
    }
}

在命令行上使用php serve启动了Web服务器。 使用http:// localhost / explorer启动资源管理器 ,然后使用以下json测试补丁方法

{
  "name": "arul"
}

api结果是

{
  "name": "arul",
  "description": null
}

这是预期的结果

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM