Retrofit @Post 操作遇到问题总结。

1.使用Retrofit修改之前xml(String)格式的post消息。

之前的Body部分对应如下,需要写成@Field的一一对应方式:

@FormUrlEncoded

@POST("getImeiState.php")

Observable(String) getImeiInfo(@Field("from") String from,

@Field("imei") String imei,

@Field("to") String to,

@Field("ver") String ver);

retrofit的addConverterFactory部分需要重写,对应StringConverterFactory的重写,

onNext返回值一般为String。

2.使用Retrofit修改之前Json格式的Post消息。

之前的Body部分对应如下,需要写成@Body的结构格式:

@POST("wcsr/verify.json")

Observable(SdkMsg) getImeiUseFulBody(

@Body KeyInfo keyInfo

);

其中KeyInfo为对应要发送的Json

public classKeyInfo {

publicStringpackage_name;

publicStringapp_key;

publicStringmobile;

publicStringwcsr;

publicKeyInfo(String package_name, String app_key, String mobile, String wcsr) {

this.package_name= package_name;

this.app_key= app_key;

this.mobile= mobile;

this.wcsr= wcsr;

}

}

SdkMsg为接收的Json格式。

public classSdkMsgimplementsSerializable {

privateStringcode;

privateStringmessage;

@Override

publicString toString() {

return"SdkMsg{"+

"code='"+code+'\''+

", message='"+message+'\''+

'}';

}

}

先记录自己能看懂,写的很乱。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,083评论 19 139
  • # 一度蜜v3.0协议 --- # 交互协议 [TOC] ## 协议说明 ### 请求参数 下表列出了v3.0版协...
    c5e350bc5b40阅读 679评论 0 0
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,925评论 25 709
  • 今晚继续阅读秋叶老师的《如何高效读懂一本书》,学习的是六顶帽子法。 这是一种提升团队决策水平的经典方法。 每一个颜...
    希亚阅读 235评论 0 0
  • 接连看了将近三小时的快乐大本营,突然觉得肚子饿了,一个苹果的能量一下午已经消耗殆尽。出来找点吃的。突然发现 ...
    Titi刘子晴阅读 298评论 0 0