Ich habe ein Szenario, in dem ich ein Bild durch POST-Anfrage hochladen muss. Es gibt kein Problem, wenn ich den Postman-Client zum Senden der Anfragen verwende. Ich muss Swagger UI verwenden, um den API-Aufruf zu testen, und ich kann das Bild nicht senden.Kopfzeile ("Content-Type": "image/jpeg") für Swagger UI.
Ich habe versucht, die Parameterwerte in der swagger.json-Datei zu ändern, um dies zu berücksichtigen, aber alle meine Versuche waren sinnlos.
Derzeit versuche ich, die Datei swagger-ui.js
zu ändern. Auf die Datei suchen, fand ich diese -
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'
};
Es gibt keine Anfrage Typ image/jpeg
oder jede andere Datei zu verarbeiten geben neben der 6 oben angegebenen Anforderungstypen.
Ich fand auch den Teil des Codes, wo multipart/form-data
behandelt wird.
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;
}
}
Ich habe auch versucht isImageJpeg
Wert Hinzufügen von Bildern zu handhaben. Ich kann nicht fortfahren, da ich keine Erfahrung mit JavaScript habe. Gibt es einen Weg, auf dem ich in ähnlicher Weise eine Bedingung hinzufügen kann, die mit dem Hochladen von Bildern umgehen kann?
Wie soll Ihre Anfrage aussehen, z.B. bei der Verwendung von 'Curl'? Kannst du auch deine Swagger-Spezifikation (.json/.yaml) posten? – Helen