Docker Community Forums

Share and learn in the Docker community.

Docker API request body is not passed to the authorization plugin

I experience inconsistency in requests passed to the docker authorization plugin depending on the client used. When I use docker client as a client authorization plugin receives base64 encoded body of the request. However when I use com.github.docker-java libarary with apache http client then authorization plugin only receives requestUri but not the request body. Both requests say that content type is application/json.

Here is an example of a request that is missing the body that authorization plugin receives. {“RequestMethod”:“POST”,“RequestUri”:"/containers/create?name=WorkflowExecutor",“RequestHeaders”:{“Accept”:“application/json”,“Accept-Encoding”:“gzip, x-gzip, deflate”,“Connection”:“keep-alive”,“Content-Type”:“application/json”,“User-Agent”:“Apache-HttpClient/5.0 (Java/11.0.8)”}}

Docker daemon must get the body because otherwise it would not be able to process the request, so I think the problem is that the body is for some reason not passed to the authorization plugin.

Any ideas why there is no body attached in the request to the authorization plugin?