gpt4 book ai didi

Azure API 网关 - 支持 OpenAPI 格式属性

转载 作者:行者123 更新时间:2023-12-03 02:55:34 26 4
gpt4 key购买 nike

我有两个 API 端点

[HttpGet("/items/{id:guid}")]
public IActionResult GetItemById(Guid id)
{

[HttpGet("/items/{code}")]
public IActionResult GetItemByCode(string code)
{

Swagger 似乎可以毫无问题地处理这些问题。我查看了 OpenAPI json 文件,注意到 guid 端点在参数对象中的格式属性设置为“uuid”。代码端点根本没有设置此属性。两者的类型参数都设置为“string”,所以我相信这就是 swagger 区分它们的方式。我想将此 json 文件导入到 Azure API 网关,但失败了,因为它将它们视为相同的签名。这是否意味着Azure不支持参数对象的格式属性?它是 v3 规范的一部分吗? Azure 是否有计划在不久的将来支持此功能?试图寻找任何相关信息,但找不到任何详细信息。

最佳答案

是的,从 APIM 的角度来看,它们是相同的。我真的不确定 OpenAPI 规范将如何处理这些,当然你可以编写这样的规范文件,但这意味着什么还不清楚。我找不到任何关于 OpenAPIv2 的文字。

此类规范在运行时也会出现问题。人们必须对参数类型有一个相当全面的优先级顺序才能使其以某种方式工作,我觉得这可能不能满足所有人。想象一下调用电话:

/items/9c850ade-c083-4f66-b03d-3fdecffb8bd0

它应该匹配 id:guid 还是 code:string?目前尚不清楚。因此最好避免此类歧义。

关于Azure API 网关 - 支持 OpenAPI 格式属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53088597/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com