How to post JSON but get XML response using Retrofit?

后端 未结 1 1812
离开以前
离开以前 2020-12-20 08:06

I have a particular webservice that expects a JSON as post, and will spit back an XML. I\'m using Retrofit for all my network calls. Here is how I set the Retrofit adapter w

相关标签:
1条回答
  • 2020-12-20 08:56

    Create custom Converter. That will use different converters for serialization and deserialization.

    public class MixedConverter implements Converter {
          private Converter mSerializer;
          private Converter mDeserializer;
    
        public MixedConverter(Converter serializer, Converter deserializer) {
            mSerializer = serializer;
            mDeserializer = deserializer;
        }
    
    
        @Override
        public Object fromBody(TypedInput body, Type type) throws ConversionException {
            return mDeserializer.fromBody(body, type);
        }
    
        @Override
        public TypedOutput toBody(Object object) {
            return mSerializer.toBody(object);
        }
    }
    

    Usage:

    .setConverter(new MixedConverter(new SimpleXMLConverter(), new GsonConverter(gson)));
    
    0 讨论(0)
提交回复
热议问题