recherche

Maison  >  Questions et réponses  >  le corps du texte

Comment la mise à niveau gère-t-elle la résolution des types de données pour les champs chiffrés ?

En cours d'utilisationretrofit过程中,通常,如果服务器返回我们的一个response.
Aussi grand que ci-dessous

{
    "code":200,
     "msg":"success",
     "result":"result"
}

peut s'écrire result中是我们请求需要的数据,所以在写apis quand

Call<Response<Result>> getResult(Requset request);

Le Result ici est obtenu en fonction des besoins réels. Si tel est le cas, ce sera relativement simple.

Mais si le serveur revient result字段的值是加密过的,那么这时候就无法直接解析了,我现在能想到的方法是给okhttp添加拦截器,直接修改返回的数据里面的字段(但是我还不知道具体怎样做),现在觉得我的思路不太好,想请问下有什么办法可以好一点的解决,自定义一个ConverterFactory?

Merci, je pense que cette situation ne devrait pas être rare, je suis donc venue demander conseil aux experts. Merci

.
伊谢尔伦伊谢尔伦2737 Il y a quelques jours685

répondre à tous(2)je répondrai

  • 滿天的星座

    滿天的星座2017-06-05 11:13:02

    Vous pouvez envisager d'utiliser des intercepteurs pour le cryptage et le déchiffrement, et Converter.Factory pour l'analyse du protocole de données.

    RétrofitÉtapes du protocole de données personnalisé :

    1. Personnalisez Converter.Factory, reportez-vous à retrofit2.converter.gson.GsonConverterFactoryConverter.Factory, 参考retrofit2.converter.gson.GsonConverterFactory

    2. 调用 Retrofit.Builder#addConverterFactory(Converter.Factory)

    除此之外, 调用方式也可以自定义, 目前比较流行使用的是Retrofit+RxJava(RxAndroid), 步骤如下:

    1. 自定义CallAdapter.Factory, 参考retrofit2.adapter.rxjava.RxJavaCallAdapterFactory

    2. 调用 Retrofit.Builder#addCallAdapterFactory(CallAdapter.Factory)

    Appelez Retrofit.Builder#addConverterFactory(Converter.Factory)🎜🎜 🎜 🎜De plus, la méthode d'appel peut également être personnalisée. La plus populaire actuellement est 🎜Retrofit🎜+🎜RxJava🎜(🎜RxAndroid🎜). 🎜 🎜🎜Personnalisez CallAdapter.Factory, reportez-vous à retrofit2.adapter.rxjava.RxJavaCallAdapterFactory🎜🎜 🎜🎜Appelez Retrofit.Builder#addCallAdapterFactory(CallAdapter.Factory)🎜🎜 🎜

    répondre
    0
  • 淡淡烟草味

    淡淡烟草味2017-06-05 11:13:02

    Généralement, le T générique est utilisé dans Result pour représenter l'entité réellement renvoyée par le serveur, vous pouvez d'abord utiliser l'intercepteur pour décoder le résultat, puis l'analyser directement avec gson

    .

    répondre
    0
  • Annulerrépondre