2017-09-06 52 views
0

通過學習曲線去解碼,並跨越這種情況下傳來:佯REST客戶端,禁用特定的接口方法

考慮到90%的電話是JSON,構建客戶端時加了GSON解碼器。但是,接口中有一些方法調用應該支持原始返回而不進行解碼。

@RequestLine("GET /rest/myrawmethod") 
String getRawMethod(); 

目前因爲GSON添加作爲解碼器,而不是返回它試圖對其進行解碼的原始字符串(它看起來像JSON的內容,但我想繞過解碼)。當不使用GSON解碼器作爲例外時,我似乎無法找到一種簡單的方法來禁用特定的接口方法。

謝謝!

回答

0

看到了各種方法一定的參考,這似乎是此時的最佳途徑:

@RequestLine("GET /rest/myrawmethod") 
feign.Response getRawMethod(); 

然後,當你去解析響應,使用類似:

feign.codec.Decoder dc = new Decoder.Default(); 
String strresponse = dc.decode(myfeignresponse, String.class); //wrapped with exception handling 

好方法在REST負載周圍沒有任何東西的情況下創建原型,只有方法調用...或者想要做更特別的事情(比如使用feign.Response流方法)。