Open sfackler opened 5 years ago
I don't think this violates the spec, the content-type header can contain parameters[1], which we've considered using to version the conjure wire protocol. Is something breaking based on the presence of parameters?
The spec seems pretty unambiguous to me:
Otherwise, clients must use
application/json
.
It's breaking a Conjure server implementation that was built with an understanding that "must use application/json" meant that the value of the Content-Type
header must be application/json
.
What happened?
A Retrofit-based client created via
Retrofit2Client.create
will sendContent-Type: application/json; charset=UTF-8
as a header.What did you want to happen?
The client should send
Content-Type: application/json
as specified in the Conjure spec: https://github.com/palantir/conjure/blob/master/docs/spec/wire.md#241-content-type-headerThe content-type is set by Retrofit's
JacksonRequestBodyConverter
, so we'd probably need to make our own version.