Swagger 招摇过市API特殊字符问题
我是一个新手,想要部署一个包含查询字符串的API。这是我在GET方法中传递参数后得到的编码URL的API 带参数的API URL应为:-Swagger 招摇过市API特殊字符问题,swagger,swagger-ui,Swagger,Swagger Ui,我是一个新手,想要部署一个包含查询字符串的API。这是我在GET方法中传递参数后得到的编码URL的API 带参数的API URL应为:- baseurl/v1/auth/getOTP?email=somename@email.com 但我得到的是:- baseurl/v1/auth/getOTP?email=somename%40email.com 我尝试的是:- "/auth/getOTP": { "get": { "t
baseurl/v1/auth/getOTP?email=somename@email.com
但我得到的是:-
baseurl/v1/auth/getOTP?email=somename%40email.com
我尝试的是:-
"/auth/getOTP": {
"get": {
"tags": [
"pet"
],
"summary": "",
"description": "",
"operationId": "findPetsByStatus",
"produces": [
"application/json",
"application/xml"
],
"parameters": [
{
"name": "email",
"in": "path",
"description": "",
"required": true,
"type": "string",
}
],
"responses": {
"200": {
"description": "successful operation",
"schema": {
"type": "array",
"items": {
"$ref": "#/definitions/Pet"
}
}
},
"400": {
"description": "Invalid value"
}
},
"security": [
{
"petstore_auth": [
"write:pets",
"read:pets"
]
}
]
}
},
Swagger OpenAPI已经指定:在这个GitHub中,由于不允许可选的路径参数,特别禁止在路径参数中使用它,例如,
{/foo}
通过使用可变路径段,很难将URL解析为操作
如果您想使用某种黑客,请遵循此GitHub
如果您真的需要,那么它在in:query
参数中的支持,如下所示
allowReserved
关键字指定保留字符:/?#[]@!$&'()*+,;=允许按原样发送参数值中的代码>或应按百分比编码。默认情况下,allowReserved
为false
,保留字符为百分比编码
在这里,您需要将其设置为true
"parameters": [
{
"name": "email",
"in": "query",
"description": "",
"required": true,
"type": "string",
"allowReserved": true
}
],
看看这个例子
更多细节如下。在这个GitHub中,在in:path
参数上特别禁止使用它,原因与它们不允许使用可选的路径参数相同,例如,{/foo}
通过使用可变路径段将URL解析为操作变得困难
如果您想使用某种黑客,请遵循此GitHub
如果您真的需要,那么它在in:query
参数中的支持,如下所示
allowReserved
关键字指定保留字符:/?#[]@!$&'()*+,;=允许按原样发送参数值中的代码>或应按百分比编码。默认情况下,allowReserved
为false
,保留字符为百分比编码
在这里,您需要将其设置为true
"parameters": [
{
"name": "email",
"in": "query",
"description": "",
"required": true,
"type": "string",
"allowReserved": true
}
],
看看这个例子
有关更多详细信息,请参见。在参数中添加此属性allowReserved:true
,有关更多详细信息@turivishal:parameters:[{“name”:“email”,“in”:“path”,“description”:“required”:true,“type”:“string”,“allowReserved”:true}它也不起作用是的,您可以添加特定的参数
对象以及名称、输入、类型属性它不起作用在您的参数中添加此属性allowReserved:true
,有关详细信息@turivishal:我应该在哪里添加此属性,“参数”:[{“名称”:“电子邮件”,“in”:“path”,“description”:“required”:true,“type”:“string”,“allowReserved”:true}它也不工作是的,您可以在特定的参数中添加对象以及名称、in、type属性它不工作