Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/255.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php swagger注释json属性中sqare括号的转义字符_Php_Json_Annotations_Swagger 2.0_Swagger Php - Fatal编程技术网

php swagger注释json属性中sqare括号的转义字符

php swagger注释json属性中sqare括号的转义字符,php,json,annotations,swagger-2.0,swagger-php,Php,Json,Annotations,Swagger 2.0,Swagger Php,我用Php Laravel编写API,并使用swagger 2.0 annotations lib:生成swagger.json,但我在键入时遇到以下问题: /** * * Space Schema * * @SWG\Get( * path="/api/v1/client/space/schema", * @SWG\Response( * response=200, * description="OK", * @SW

我用Php Laravel编写API,并使用swagger 2.0 annotations lib:生成swagger.json,但我在键入时遇到以下问题:

/**
 *
 * Space Schema
 *
 * @SWG\Get(
 *     path="/api/v1/client/space/schema",
 *     @SWG\Response( 
 *        response=200, 
 *        description="OK",
 *        @SWG\Property(property="result", type="json", example={ "aa": [ "bb", "cc" ] }  )
 *      )
 * )
并尝试生成swagger.json,我得到:

[Syntax Error] Expected PlainValue, got '[' in ...
但当我不使用方括号时,例如:

@SWG\Property(property="result", type="json", example={ "ee": "ff" })
那么一切都好了。但是,我需要使用方括号,因此问题是:

在swagger注释中,json字符串中的[方括号]的转义字符是什么


我还想补充一点,我的示例json非常大和复杂

我发现了一些并非100%令人满意的解决方法,但我将把它放在这里:

改变

@SWG\Property(property="result", type="json", example={ "aa": [ "bb", "cc" ] }  )
致:

您可以使用转换json中的引号

如果您有问题,也可以将type=json更改为

type=string,format=json

因为您更改了API结果定义,所以我们会非常认真地对待它

此解决方案的缺点是,在中,您将无法获得格式良好的json,但字符串会加倍。然而,如果单击Model,复制将消失,开发人员将能够复制示例json


我发现了一些并非100%令人满意的解决方法,但我将把它放在这里:

改变

@SWG\Property(property="result", type="json", example={ "aa": [ "bb", "cc" ] }  )
致:

您可以使用转换json中的引号

如果您有问题,也可以将type=json更改为

type=string,format=json

因为您更改了API结果定义,所以我们会非常认真地对待它

此解决方案的缺点是,在中,您将无法获得格式良好的json,但字符串会加倍。然而,如果单击Model,复制将消失,开发人员将能够复制示例json


我意外地找到了更好的解决方案:

更改以下内容中的方括号[和]:

要使用大括号{和},请执行以下操作:

正如您所看到的,我们使用大括号,但我们不使用key:value-conwention-only键,所以swagger能够检测数组


我们在swagger ui中有漂亮且简单的json格式:

我偶然发现了更好的解决方案:

更改以下内容中的方括号[和]:

要使用大括号{和},请执行以下操作:

正如您所看到的,我们使用大括号,但我们不使用key:value-conwention-only键,所以swagger能够检测数组

我们在swagger ui中提供了漂亮且易于格式化的json:

@SWG\Property(property="result", type="json", example={ "aa": [ "bb", "cc" ] }  )
@SWG\Property(property="result", type="json", example={ "aa": { "bb", "cc" } }  )