大张旗鼓的API文档

时间:2018-10-11 15:15:26

标签: php symfony swagger openapi api-platform.com

我有一个api-platform关于symfony4的项目。 在security.yaml中描述的登录过程就是这样:

security:
encoders:
    App\Entity\User: bcrypt
providers:
    our_db_provider:
        entity:
            class: App\Entity\User
            property: email
firewalls:
    ....
    login:
        pattern: ^/login
        stateless: true
        anonymous: true
        json_login:
            check_path: /login
            success_handler: lexik_jwt_authentication.handler.authentication_success
            failure_handler: lexik_jwt_authentication.handler.authentication_failure
            username_path: email
        logout:
            path:   /logout
            target: /
    api:
        pattern: ^/
        stateless: true
        guard:
            authenticators:
            - lexik_jwt_authentication.jwt_token_authenticator
        ....

对于我的所有模型,我都有漂亮的内置swagger-ui,并且还可以为其添加一些属性。 但是如何描述登录请求? 我看过Swagger / Open API Support这个文档,但实际上我应该提供带有描述的原始数组吗?也许最好在自定义页面的某些yaml配置中进行设置?最后一个问题。在哪里可以找到此数组的结构?

1 个答案:

答案 0 :(得分:1)

因为从库的角度来看这是一个自定义入口点,所以您必须按照本文档入口中所述装饰Swagger文档生成器,以添加登录入口点的定义:https://api-platform.com/docs/core/swagger/#overriding-the-swagger-documentation

目前没有其他解决方案。添加一个新的配置选项以允许注入一些YAML会很好(欢迎PR!)