#openapi #azure-api-management
#openapi #azure-api-management
Вопрос:
Я подключил свои API-интерфейсы OData V4 к Azure API Management (gateway) через open API spec 3.0
Я определил набор OData
конечных точек, доступных в спецификации, и я могу легко получить к ним доступ (с такими функциями OData или без $top, $skip, $filter, etc
них).
Тем не менее, я пытаюсь добиться /$metadata
результата, и я получаю « 500 internal server error
«.
Я даже пытался добавить « /$metadata
» в качестве одной из конечных точек в 'paths'
спецификации (тот же результат).
paths:
/$metadata:
get:
summary: getMetadata
description: getMetadata
operationId: getMetadata
responses:
'200':
description: Metadata
Я могу добавить «/ *» в качестве пути, который даст мне список объектов, когда я просто нажму 'https://AAM_Url'<br />
Но я не хочу этого делать, так как это приведет к принятию любого подобного нежелательного запроса /fgfdgdg
и вызову серверной службы…
Комментарии:
1. Я не добавил часть ответа `содержимое` … например, «‘ content: application / json: schema: $ ref: «‘ Надеюсь, это не вызовет никаких проблем… потому что он начал работать без него…
Ответ №1:
Моя вина. Он работал над добавлением «/ $metadata» в спецификации в качестве одного из путей.
В моей политике исходящих сообщений была ошибка, которая вызвала проблему. Я пытался прочитать ответ на JObject, но /$metadata выдает ответ в XML, следовательно, из-за ошибки преобразования я получал 500 внутренних ошибок сервера в качестве ответа.