Code Monkey home page Code Monkey logo

api's Issues

Typing error - OPTIONS method

Can you please fix typing error in Contributte\Api\Schema\Endpoint,php
correct name of method is OPTIONS with "S" on rows 15 , 22

Routing: simplify routing mask

middleware.api:
    class: Contributte\Api\Bridges\Middlewares\ApiDataMiddleware([
        Contributte\Api\Bridges\Middlewares\ApiRouter("^/franta/{api}{?format:\\.json|.debug}$"),
        Contributte\Api\Bridges\Middlewares\ApiContentNegotiation([
            Contributte\Api\Bridges\Middlewares\Negotiation\UrlNegotiator([
                "json": Contributte\Api\Bridges\Middlewares\Negotiation\Transformer\JsonTransformer(),
                "debug": Contributte\Api\Bridges\Tracy\Negotiation\Transformer\DebugTransformer(),
                "*": Contributte\Api\Bridges\Middlewares\Negotiation\Transformer\JsonTransformer()
            ])
        ]),
        Contributte\Api\Bridges\Middlewares\ApiEmitter()
    ])

to

middleware.api:
    class: Contributte\Api\Bridges\Middlewares\ApiDataMiddleware([
        Contributte\Api\Bridges\Middlewares\ApiPrefix("/franta"),
        Contributte\Api\Bridges\Middlewares\ApiContentNegotiation([
            Contributte\Api\Bridges\Middlewares\Negotiation\UrlNegotiator([
                "json": Contributte\Api\Bridges\Middlewares\Negotiation\Transformer\JsonTransformer(),
                "debug": Contributte\Api\Bridges\Tracy\Negotiation\Transformer\DebugTransformer(),
                "*": Contributte\Api\Bridges\Middlewares\Negotiation\Transformer\JsonTransformer()
            ])
        ]),
        Contributte\Api\Bridges\Middlewares\ApiEmitter()
    ])

Prefix all routes

It would be nice to be able to set in config something like

api:
    prefix: /api/v1

and then @RootPath("/foo") would mean url https://<host>/api/v1/foo

Mapping: request/response entity

/**
 * @Path("/user/{id}")
 * @Method("POST")
 * @Mapping({
 *   @Request(My/Entity),
 *   @Response(My/Entity2),
 * })
 * @param ApiRequest $request
 * @param ApiDataResponse $response
 * @return ApiResponse
 */
public function detail(ApiRequest $request, ApiDataResponse $response) {
}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.