2015-07-24 2 views
0

Я новичок в разработке остальные веб-службы и сейчас я пытаюсь добавить authenication через этот URL: http://developers-blog.helloreverb.com/enabling-oauth-with-swagger/Редактирование Swagger api-docs?

К сожалению, я застрял на первом этапе, когда он говорит, чтобы изменить список ресурсов , который, я считаю, является api-docs, не так ли? Итак, как я должен отредактировать это, если он сгенерирован службой и не хранится как файл в любом месте?

Моя Кураж версия 1.2

ответ

1

Ссылку вы предоставили относится к Swagger 1.2, но последняя версия Swagger 2.0

В качестве отправной точки, вы можете рассмотреть возможность использования editor.swagger.io и анализа на примере PetStore, который содержит authentication-related setting

+0

Моя развязность версия 1.2 –

+0

При использовании Swagger Spec 1.2 является обязательным, то, пожалуйста, обратитесь к [Authorization Objects] (https://github.com/swagger-api/swagger-spec/blob/master/versions/1.2.md#514-authorizations-object) в спецификации. –

0

Взгляните на образец магазина домашних животных из тега 1.3.12, который был последней версией выпуска Swagger 1.2 - https://github.com/swagger-api/swagger-core/tree/v1.3.12/samples/java-jaxrs.

В частности, вам нужно добавить определения к чему-то, как ваш Bootstrap класс:

public class Bootstrap extends HttpServlet { 
    static { 
    // do any additional initialization here, such as set your base path programmatically as such: 
    // ConfigFactory.config().setBasePath("http://www.foo.com/"); 

    ApiInfo info = new ApiInfo(
     "Swagger Sample App",        /* title */ 
     "This is a sample server Petstore server. You can find out more about Swagger " + 
     "at <a href=\"http://swagger.io\">http://swagger.io</a> or on irc.freenode.net, #swagger. For this sample, " + 
     "you can use the api key \"special-key\" to test the authorization filters", 
     "http://helloreverb.com/terms/",     /* TOS URL */ 
     "[email protected]",       /* Contact */ 
     "Apache 2.0",          /* license */ 
     "http://www.apache.org/licenses/LICENSE-2.0.html" /* license URL */ 
    ); 

    List<AuthorizationScope> scopes = new ArrayList<AuthorizationScope>(); 
    scopes.add(new AuthorizationScope("email", "Access to your email address")); 
    scopes.add(new AuthorizationScope("pets", "Access to your pets")); 

    List<GrantType> grantTypes = new ArrayList<GrantType>(); 

    ImplicitGrant implicitGrant = new ImplicitGrant(
     new LoginEndpoint("http://petstore.swagger.wordnik.com/oauth/dialog"), 
     "access_code"); 

    grantTypes.add(implicitGrant); 

    AuthorizationType oauth = new OAuthBuilder().scopes(scopes).grantTypes(grantTypes).build(); 

    ConfigFactory.config().addAuthorization(oauth); 
    ConfigFactory.config().setApiInfo(info); 
    } 
} 
Смежные вопросы