Um brauchte ich Authorization-Header mit einer Anfrage mit Swagger UI senden an:
Da der Name meiner Versammlung ist: My.Assembly und es enthält einen Ordner: Swagger, wo ich platziert meine Gewohnheit index.html, habe ich diese Zeile in SwaggerConfig.cs:
c.CustomAsset("index", thisAssembly, "My.Assembly.Swagger.index.html");
Beachten Sie, dass index.html Lasten JavaScript- und CSS-Dateien. Ich musste alle Punkte in den Dateipfaden ändern, damit diese Dateien geladen werden konnten. Ich weiß nicht, warum es getan werden musste, aber es löste das Problem der die Datei geladen ...
In der Datei index.html ich die
geändert addApiKeyAuthorization()
Funktion so aussehen:
function addApiKeyAuthorization() {
var key = encodeURIComponent($('#input_apiKey')[0].value);
if (key && key.trim() != "") {
var value = "auth-scheme api_key=123456,order_id=56789";
var authKeyHeader = new SwaggerClient.ApiKeyAuthorization("Authorization", value, "header");
window.swaggerUi.api.clientAuthorizations.add("Authorization", authKeyHeader);
}
}
Hinweis geändert I "Abfrage" auf "Header".
ich diesen Code auch unkommentiert:
var apiKey = "this field represents header but can be anything as long as its not empty";
$('#input_apiKey').val(apiKey);
, welcher Text in dem zweiten Textfeld angezeigt wird, aber es scheint nicht, was macht es enthält solange es nicht leer ist.
Das funktionierte für mich und ermöglichte mir, benutzerdefinierte index.html-Datei zu laden. Jetzt schaue ich Swagger UI Benutzer zu aktivieren, um den Wert der Header-Parameter zu ändern ...
https://github.com/swagger-api/swagger-ui#custom-header-parameters---for-basic-auth-etc –
@ AlbertoPellizzon - wo wird Ich füge diesen Code hinzu? Welche Datei? – Marta
nach der SwaggerUi-Initialisierung versuchen, Serching, wo es initialisiert wird, so etwas wie var swaggerUi = new SwaggerUi ({}); –