API蓝图:语义问题"没有指定值#34;

时间:2017-03-16 14:27:42

标签: apiblueprint apiary.io

在我的蓝图中,我定义了一个数据结构并试图像这样使用它

+ Attributes

    + error: (Error Details, required)

文档末尾的数据结构定义:

# Data Structures

## Error Details
+ code : 1234 (number, required) - see list of error codes
+ message: User not found (string, required) - a human-readable error message

得到的样本响应体看起来和预期的一样,但是apiary.io上的验证显示了我使用这样的结构的每个地方的语义问题,说"没有指定值#34;。 / p>

我做错了什么或是apiary.io解析器的问题?

3 个答案:

答案 0 :(得分:2)

我现在和ApiBlueprint有同样的问题,这解决了我的问题。 建设没有任何错误或警告。

省略分号和单独的对象定义,并输入类似owner的内容。

## Company (object)
 - name: Company name (string)
 - owner (OwnerResponse) (object)

希望对任何人都有所帮助。

答案 1 :(得分:0)

属性部分也可以定义为+ Attributes <Type Definition>specification),因此定义+ Attributes (Error Details, required)应该解决给定的语义问题。

修改

当未定义示例值时,您必须在属性的名称及其类型之间省略冒号:

+ Attributes

    + error (Error Details, required)

之前错过了,抱歉。

答案 2 :(得分:0)

与其他当前答案相似的答案,但仍然为我解决了这个问题。

不好:

+ Attributes
    + `status`: OK
    + `data`:
        + 5 (Channeldata)
        + 7 (Channeldata)

修复:

+ Attributes
    + `status`: OK
    + `data`
        + 5 (Channeldata)
        + 7 (Channeldata)

正如其他人所指出的,在正确的位置失去一个冒号可以解决问题。