При создании записной книжки API с именем ресурса, разделенным дефисом, "/ songs-list" выдается ошибка - PullRequest
0 голосов
/ 13 июля 2020

При создании записной книжки API с разделенным дефисом именем ресурса «/ songs-list» в RAML 1.0, API Platform 2.0 возникает следующая ошибка: Ошибка APINotebook

API.createClient('client', '9c2861a1-b**b-401e-****-1ec*****b20c', 'testhyphen', '1.0.2');

$ 0 = Клиент был успешно создан

client.songs-list.post[{"msg":"succ"}];

$1=ReferenceError: list is not defined
at eval (eval at <anonymous> (eval at value (https://cdn.anypoint.mulesoft.com/artifacts/exchange-ui/main.efc15523965187f6c807.js:1:998504)), <anonymous>:1:14)
at Object.eval (eval at value (https://cdn.anypoint.mulesoft.com/artifacts/exchange-ui/main.efc15523965187f6c807.js:1:998504), <anonymous>:3:8)
at e.value (https://cdn.anypoint.mulesoft.com/artifacts/exchange-ui/main.efc15523965187f6c807.js:1:998611)
at https://cdn.anypoint.mulesoft.com/artifacts/exchange-ui/main.efc15523965187f6c807.js:1:2212756
at h.run (https://cdn.anypoint.mulesoft.com/artifacts/exchange-ui/main.efc15523965187f6c807.js:1:282445)
at p (https://cdn.anypoint.mulesoft.com/artifacts/exchange-ui/main.efc15523965187f6c807.js:1:281939)
at nrWrapper (https://anypoint.mulesoft.com/exchange/9c2861a1-b**b-401e-****-1ec*****b20c/testhyphen/minor/1.0/:1:24554)

RAML вышеупомянутого актива, как показано ниже, с именем ресурса "/ songs-list":

     #%RAML 1.0
     title: testhyphen
     /songs-list:
        post:
          body:
            application/json:
          responses:
            200:
              body:
                application/json:
                  example: {"messgae": "Success"}

Если имя ресурса не содержит «-» (дефис), например, когда ресурс - «/ песни», то записная книжка API работает должным образом. Успешное выполнение блокнота API

API.createClient('client', '9c2861a1-b**b-401e-****-1ec*****b20c', 'testset', '1.0.1');

$0=Client has been successfully created

client.songs.post[{"msg":"succ"}];

Code snippet executed with no results

1 Ответ

0 голосов
/ 16 июля 2020

Вы можете использовать этот формат для успешного выполнения:

clients['songs-list'].post[{"msg":"succ"}];

Без этого формата дефис будет восприниматься как оператор вычитания. Поскольку APINotebook работает на JavaScript и поддерживает любой синтаксис JavaScript, вы можете узнать, как что-то делать в JavaScript, и они должны работать с APINotebook.

...