So veröffentlichen Sie Dateien in Fors (Open API)?
Ich bin mit Swagger zu dokumentieren, meine REST-services. Einer meiner Dienstleistungen erfordert eine CSV-Datei hochgeladen werden. Ich habe Folgendes in der parameters
Abschnitt in meinem JSON-API-definition:
{
"name": "File",
"description": "The file in zip format.",
"paramType": "body",
"required": true,
"allowMultiple": false,
"dataType": "file"
}
und nun sehe ich die Datei-upload-option auf meinem Swagger-UI Seite. Aber wenn ich wählen Sie eine Datei und klicken Sie auf "try it out", bekomme ich die folgende Fehlermeldung:
NS_ERROR_XPC_BAD_OP_ON_WN_PROTO: Illegal operation on WrappedNative Prototyp-Objekt in jquery-1.8.0.min.js (Zeile 2)
Die Seite ist kontinuierlich in Bearbeitung und ich erhalte keine Antwort.
Irgendwelche Ideen, was falsch sein könnte?
- können Sie versuchen, es ohne das Letzte Komma hinter "Datei"?
- Bitte ignorieren Sie das Komma, es ist nur ein typo Fehler.
- vielleicht können Sie versuchen, Debuggen die folgende Weise: (vielleicht mit neueren Abfrage version), verwenden Sie eine nicht-minimierte version von jquery und ein Blick in die JS-Konsole (vielleicht einen breakpoint setzen) und finden Sie heraus, wie der Fehler produziert wird. Vielleicht bekommen Sie mehr Informationen darüber, was das problem verursacht.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Open API-Spezifikation 2.0
In Swagger 2.0 (Open API-Spezifikation 2.0), verwenden Sie ein Formular-parameter (
in: formData
) mit dertype
eingestellt Datei. Darüber hinaus wird die Tätigkeit derconsumes
muss entwedermultipart/form-data
,application/x-www-form-urlencoded
oder beides.Open API-Spezifikation 3.0
In Open API-Spezifikation 3.0, Dateien sind definiert als Binär-strings, das ist
type: string
+format: binary
(oderformat: byte
je nach Anwendungsfall). Datei-Eingabe/Ausgabe von Inhalten wird beschrieben und mit der gleichen Semantik wie alle anderen schema-Typ (im Gegensatz zu Open API 2.0):Multi-part-Anfrage, einzelne Datei:
Multi-Teil Wunsch, ein array von Dateien:
POST/PUT-Datei direkt (der request-body wird der Inhalt der Datei):
Hinweis: die Semantik ist die gleiche wie bei anderen Open API 3.0-schema-Typen:
Weitere Informationen:
filedata
, dann meine instream-variable sollte initialisiert werden, um so etwas wiereq.swagger.params.filedata.value
? das gibt mir eine Fehlermeldung.schließlich fand ich die Antwort auf diese, eigentlich bisher gibt es keine Unterstützung für Datei-upload, jetzt ist Sie aktualisiert swagger-ui.js - Datei. Sie brauchen, um Ihre alten ersetzen, mit neuen und auch Sie haben, um zu definieren, diese Eigenschaften unter Parameter für bestimmte parameter:
Scheint mir die Arbeit mit