Swagger редактирует API-документы?

Я новичок в разработке веб-сервисов для отдыха, и теперь я пытаюсь добавить аутентификацию по этому URL-адресу: http://developers-blog.helloreverb.com/enabling-oauth-with-swagger/

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

Моя версия Swagger 1.2


person Don Kane    schedule 24.07.2015    source источник


Ответы (2)


Предоставленная вами ссылка относится к Swagger 1.2, но последняя версия — Swagger 2.0.

В качестве отправной точки вы можете использовать editor.swagger.io и просмотреть пример зоомагазина, который содержит настройка, связанная с аутентификацией

person William Cheng    schedule 24.07.2015
comment
Моя версия чванства 1.2 - person Don Kane; 24.07.2015
comment
Если использование Swagger Spec 1.2 является обязательным, обратитесь к Объекты авторизации спецификации. - person William Cheng; 24.07.2015

Взгляните на образец зоомагазина из тега 1.3.12, который был последней версией, производящей Swagger 1.2 — https://github.com/swagger-api/swagger-core/tree/v1.3.12/образцы/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);
  }
}
person Ron    schedule 03.08.2015