Зміни в документі 2. Налаштування бандла

Остання зміна 2024/07/11 11:49 автором Ashterix

Від версії 5.1
редаговано Ashterix
дата 2024/07/11 11:42
Змінити коментар: Немає коментарів для цієї версії
До версії 3.1
редаговано Ashterix
дата 2024/07/11 11:40
Змінити коментар: Немає коментарів для цієї версії

Підсумок

Подробиці

Властивості сторінки
Вміст
... ... @@ -50,6 +50,21 @@
50 50  
51 51  
52 52  
53 +
54 +
55 +
56 +
57 +
58 +
59 +
60 +
61 +
62 +
63 +
64 +
65 +
66 +
67 +
53 53  Параметр {{code language="none"}}clients_tokens{{/code}}
54 54  
55 55  Тепер слід вказати масив клієнтськіх токенів, які будуть мати доступ до API.
... ... @@ -185,7 +185,7 @@
185 185  * {{code language="none"}}project_description{{/code}}: Опис проєкту
186 186  * {{code language="none"}}project_version{{/code}}: Поточна версія вашого API
187 187  * {{code language="none"}}async_dsn_info{{/code}}: Відповідає за відображення в документації інформації про асинхронний транспорт
188 -* (% id="cke_bm_826282S" style="display:none" %){{code language="none"}}validations.symfony_asserts{{/code}}{{code language="none"}}validations.symfony_asserts{{/code}}(%%): <bool> Відповідає за відображення рядку очікувань валідації для параметра (якщо ви використовуєте [[валідацію>>doc:docs.JsonRpcBundle.add_rpc_service.assertions.WebHome]])
203 +* (% id="cke_bm_826282S" style="display:none" %) {{code language="none"}}validations.symfony_asserts{{/code}}(%%): <bool> Відповідає за відображення рядку очікувань валідації для параметра (якщо ви використовуєте [[валідацію>>doc:docs.JsonRpcBundle.add_rpc_service.assertions.WebHome]])
189 189  
190 190  {{code language="yaml" layout="LINENUMBERS" title="config/packages/ufo_json_rpc.yaml"}}
191 191  ufo_json_rpc:
... ... @@ -200,8 +200,37 @@
200 200  
201 201  {{/code}}
202 202  
218 +==== **Приклад документації ** ====
219 +
220 +{{code language="json" layout="LINENUMBERS" title="GET: /api"}}
221 +{
222 + "envelope": "JSON-RPC-2.0/UFO-RPC-6",
223 + "contentType": "application/json",
224 + "description": "",
225 + "transport": {
226 + "sync": {
227 + "scheme": "http",
228 + "host": "example.com",
229 + "path": "/api",
230 + "method": "POST"
231 + },
232 + "async": {
233 + "scheme": "amqp",
234 + "user": "{user}",
235 + "pass": "{pass}",
236 + "host": "async_rabbit",
237 + "port": 5672,
238 + "path": "/%2f/json-rpc"
239 + }
240 + },
241 + "methods": {
242 + ...
243 + }
244 +}
245 +{{/code}}
246 +
203 203  {{info}}
204 -Не переймайтеся щодо безпеки ваших авторизаційних даних, що містяться в DSN.
248 +Не переймайтеся щодо безпеки ваших авторизаційних даних. що містяться в DSN.
205 205  
206 206  Документатор побудований таким чином, що перед виводом інформації про DSN він видаляє дані про користувача і його пароль, а також інші секретні дані, як то токени, секретні ключі, тощо.
207 207  
... ... @@ -221,8 +221,39 @@
221 221  {{/code}}
222 222  {{/info}}
223 223  
224 -=== Приклад документації ===
268 +=== Параметр {{code language="none"}}validations{{/code}} ===
225 225  
270 +Відповідає за відображення в документації методів додаткових блоків, що вказують на вимоги до валідації даних.
271 +
272 +Наразі цей блок має два можливих налаштування:
273 +
274 +* {{code language="none"}}json_schema: <bool>{{/code}}
275 +* {{code language="none"}}symfony_asserts: <bool>{{/code}}
276 +
277 +У всіх опцій в цьому параметрі значення за замовченням {{code language="none"}}false{{/code}}, тобто ці блоки не будуть відображатися в документації.
278 +Якщо ви потребуєте якийсь з цих блоків інформації при запиті документації, то встановіть значення в {{code language="none"}}true{{/code}}.
279 +
280 +{{code language="yaml" layout="LINENUMBERS" title="config/packages/ufo_json_rpc.yaml"}}
281 +ufo_json_rpc:
282 + docs:
283 + project_name: 'My Project'
284 + project_description: ''
285 + project_version: null
286 + # Optional response details
287 + async_dsn_info: false # Provide information about API that work asynchronously
288 + validations:
289 + symfony_asserts: false # Indicates if an array of Symfony validation constraints is used
290 +
291 +{{/code}}
292 +
293 +==== **Приклад документації ** ====
294 +
295 +(% class="box infomessage" %)
296 +(((
297 +В цьому прикладі я видалив вміст обʼєктів symfony_assertions для спрощення прикладу.
298 +Детальніше про валідацію методів дивись сторінку **[[Валідація процедур>>doc:docs.JsonRpcBundle.add_rpc_service.assertions.WebHome]]**
299 +)))
300 +
226 226  {{code language="json" layout="LINENUMBERS" title="GET: /api"}}
227 227  {
228 228   "openrpc":"1.2.6",