2015-01-08 6 views
0

재생 프레임 워크로 멋을 사용하려고합니다.Swagger UI - 확장 작업을 수행 할 수 없습니다.

나는 코드에서 API 주석을 추가하고 난

localhost를 통해 액세스 할 수 있습니다 : 9000/API-문서

{ 
    apiVersion: "beta", 
    swaggerVersion: "1.2", 
    basePath: "http://localhost", 
    resourcePath: "/metrics", 
    produces: [ 
     "application/json" 
    ], 
    apis: [ 
     { 
     path: "/metrics", 
     operations: [ 
      { 
       method: "POST", 
       summary: "Save metrics", 
       ... 
       authorizations: { }, 
       parameters: [ ], 
       responseMessages: [ 
       { 
        code: 400, 
        message: "Expecting Json data" 
       }, 
       ] 
      } 
     ] 
     } 
    ] 
} 

그러나 내가 자신감 UI에 그것을 탐구하려고 할 때, 나는 확장하거나 작업을 나열 할 수 없습니다.

나는 위의 index.html에서 다음과 같이 변경했습니다.

$(function() { 
    var url = window.location.search.match(/url=([^&]+)/); 
    if (url && url.length > 1) { 
    url = url[1]; 
    } else { 
    url = "http://localhost:9000/api-docs"; 
    } 
... 

    window.authorizations.add("Accept", new ApiKeyAuthorization("Accept", "application/json", "header")); 

구성이 누락 되었습니까? 제안이나 조언을 제공해주십시오.

+0

어떤 버전의 swagger-ui를 사용하십니까? – Ron

+0

최신 버전을 사용하고 있습니다. 여하튼 나는 이유를 알아 냈다. ApiOperation Annotation에는 애칭 필드가 있습니다. 그건 필수입니다. 별칭 이름 필드가 구성되어 있지 않으면 작업을 확장 할 수 없습니다. –

답변

0

두 가지 문제가있었습니다.

  1. 기본 URL이 제대로 구성되지 않았습니다. conf 파일에 다음 필드를 추가하여이를 수정했습니다.

    swagger.api.basepath = "HTTP : // localhost를 : 9000 /"를 ApiOperation 주석의 별명 필드가 있습니다

  2. . 그건 필수입니다. 닉 네임 필드가 주어지지 않으면 UI에서 작업을 확장 할 수 없습니다.

관련 문제