How to use ring middlewares to handle multipart request with different content types

The built-in ring.middleware.multipart-params will parse every body into File, I want to mix file with json.