gpt4 book ai didi

javascript - header ("Content-Type": "image/jpeg") for Swagger UI.

转载 作者:太空宇宙 更新时间:2023-11-04 15:36:14 24 4
gpt4 key购买 nike

我有一个场景,我需要通过 POST 请求上传图像。当我使用Postman客户端发送请求时没有问题。我需要使用 Swagger UI 来测试 API 调用,但无法发送图像。

我尝试更改 swagger.json 文件中的参数值来适应这一点,但我所有的尝试都是徒劳的。

目前,我正在尝试更改 swagger-ui.js 文件。查看文件后,我发现了这个 -

request.types = {
html: 'text/html',
json: 'application/json',
xml: 'application/xml',
urlencoded: 'application/x-www-form-urlencoded',
'form': 'application/x-www-form-urlencoded',
'form-data': 'application/x-www-form-urlencoded'
};

除了上述 6 种给定的请求类型之外,没有任何请求类型可以处理 image/jpeg 或任何其他文件类型。

我还找到了处理multipart/form-data的代码部分。

var isMultiPart = false;
if(headers['Content-Type'] && headers['ContentType'].indexOf('multipart/form-data') >= 0) {
isMultiPart = true;
}

if (hasFormParams && !isMultiPart) {
var encoded = '';

for (key in formParams) {
value = formParams[key];

if (typeof value !== 'undefined') {
if (encoded !== '') {
encoded += '&';
}

encoded += encodeURIComponent(key) + '=' + encodeURIComponent(value);
}
}

body = encoded;
} else if (isMultiPart) {
if (opts.useJQuery) {
var bodyParam = new FormData();

bodyParam.type = 'formData';

for (key in formParams) {
value = args[key];

if (typeof value !== 'undefined') {
// required for jquery file upload
if (value.type === 'file' && value.value) {
delete headers['Content-Type'];

bodyParam.append(key, value.value);
} else {
bodyParam.append(key, value);
}
}
}

body = bodyParam;
}
}

我还尝试添加 isImageJpeg 值来处理图像。由于我之前没有 JavaScript 经验,因此无法继续。有没有一种方法可以类似地添加一个可以处理图像上传的条件?

最佳答案

当前OpenAPI specification Swagger 禁止除 application/x-www-form-urlencoded 和/或 multipart/form-data 之外的任何 HTTP 负载描述(通过 consumes 参数) .

原因之一是您不应该依赖客户提供 correct MIME type对于上传的文件。

关于javascript - header ("Content-Type": "image/jpeg") for Swagger UI.,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44331345/

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