Validation 在swagger ui中自定义输入验证

Validation 在swagger ui中自定义输入验证,validation,swagger,swagger-ui,swashbuckle,Validation,Swagger,Swagger Ui,Swashbuckle,我们正在使用在Asp.Net核心之上工作的Swashback包从Web服务器公开swagger ui。我们遇到了Guid输入字段的输入验证问题 我们正在粘贴的guid(从系统的其他部分读取)的格式为deb83f8a3edc4b78a2ece3321f81b58b,请注意缺少的破折号。输入验证拒绝此项,因为它希望格式中有破折号(因此它接受deb83f8a-3edc-4b78-a2ec-e3321f81b58b) 我们提供的swagger文档的参数为type:string和format:uuid。它

我们正在使用在Asp.Net核心之上工作的Swashback包从Web服务器公开swagger ui。我们遇到了Guid输入字段的输入验证问题

我们正在粘贴的guid(从系统的其他部分读取)的格式为deb83f8a3edc4b78a2ece3321f81b58b,请注意缺少的破折号。输入验证拒绝此项,因为它希望格式中有破折号(因此它接受deb83f8a-3edc-4b78-a2ec-e3321f81b58b)

我们提供的swagger文档的参数为type:string和format:uuid。它调用一些内部validationGuid调用,这些调用具有强制破折号的reg-ex。从浏览器控制台看,它似乎在寻找一个名为JsonSchema_string_uuid的组件,但没有找到它

因此,我的问题是如何扩展swagger ui以覆盖特定参数类型/格式的验证

更新:
我知道RFC将UUID指定为包含破折号和解决方法。但是,我仍然有兴趣了解如何定制定制格式的验证,特别是uuid?

虽然OpenAPI规范和JSON模式目前没有定义
格式:uuid
,但将uuid定义为包含破折号,在OpenAPI存储库中,建议
格式:uuid
应该遵循RFC4122。这意味着没有破折号的示例很可能不是
格式:uuid


考虑将
格式:uuid
替换为
模式:“^[A-Fa-f0-9]{32}$
”。

有趣的是,我不知道RFC。我会注意到指定特定模式的能力,但如果您对此有任何信息,我仍然对提供自定义验证感兴趣。我认为唯一的方法是分叉并构建您自己的版本,因为它是“核心”函数的一部分。也就是说,我建议你直接从Swagger UI开发者那里得到答案。谢谢@Helen,我同意你的模式建议,可能会在Swagger UI repo上发布一个问题,征求他们的意见