Swagger를 사용하여 내 REST API에 대한 문서를 생성합니다. 주위에 쓰여진 내용에 따르면 Swagger UI는 기본 인증을 지원하지 않습니다 (online editor과 다름). 내 문제는 내 API 중 하나가 다이제스트 (심지어 기본이 아님) 인증이 필요한 POST입니다.다이제스트 인증을 사용하는 사용자 인터페이스
해결 방법 가능한 해결책은 고정 된 사용자를 추가하는 것입니다. 자바 스크립트 코드를 통해 요청에 인증 헤더를 전달하십시오. 이는 Swagger UI documentation (Custom Header Parameters 참조)에 따라 쉽게 이루어져야합니다. 죄송합니다 코드 줄을보고합니다 :
swaggerUi.api.clientAuthorizations.add("key", new SwaggerClient.ApiKeyAuthorization("Authorization", "XXXX", "header"));
불행히도 그것은 작동하지 않습니다. swaggerUi.api
필드는 SwaggerUi 개체를 초기화 한 후에 초기화되지 않습니다 (null). 결과적으로 swaggerUi.api.clientAuthorizations
은 정의되지 않습니다. 난 필드를 초기화하는 시도가 다른 방식으로, 매번 실패합니다. 이 주제에 관해 논의한 스레드에서 발견 된 API에 대한 비슷한 호출도 시도했지만 그 중 아무 것도 작동하지 않았습니다. 누구든지 그것에 대한 아이디어가 있습니까? 그 문서는 그 점에 관해서 특히 명확하지 않습니다.
는 완성도를 위해, 나는 내가 Swagger UI
var urlPush = "./doc_push.yaml";
window.swaggerUiPush = new SwaggerUi({
url: urlPush,
dom_id: "swagger-ui-container-push",
supportedSubmitMethods: ['get', 'post', 'put', 'delete', 'patch'],
onFailure: function(data) {
log("Unable to Load SwaggerUI");
},
docExpansion: "list",
jsonEditor: false,
defaultModelRendering: 'model',
showRequestHeaders: false,
});
를 : 기본 XXXXXXX "(조심해, 새 버전의 '기본'필드가 존재하지 않으려는). 문제는 다이제스트 인증 문제 (사용자의 MD %가 필요 : 영역 : 패스)가 아닌 기본 인증 문제를 해결하는 것입니다. – McKracken