这几天简单学习了一下Android Retrofit框架的使用,在开发demo的时候遇到些许问题,在此记录下来:
开发环境:后台是使用C#语言开发的WebAPI,前端是Android(Java)。
问题一:后台WebAPI写了一个测试接口,返回string类型内容,在Android端调用此接口并显示接口返回的数据。
C#后端API代码如下:
此API位于ValuesController中,相对路径为api/values/GetData
[HttpGet]
[Route("GetData")]
public ActionResult<string> GetData(int id,string name)
{
return id * 10 + name;
}
Android端调用代码如下:
1.定义一个WebService接口,用来在此接口中声明要调用的API接口方法;
public interface WebAPIService {
@GET("/api/values/GetData")
Call<String> getData(@Query("id") int id, @Query("name") String name);
}
2.Retrofit相关的代码:
2.1刚开始是这么构建Retrofit实例的,但是都不能成功,要么提示没有提供ConverterFactory,要么提示提供了错误的ConverterFactory
//不加上.addConverterFactory(GsonConverterFactory.create())和加上都不能成功调用
Retrofi

本文记录了在使用Android Retrofit框架与C# WebAPI配合开发时遇到的问题及解决方法。问题一是关于使用ScalarsConverterFactory处理返回的string内容;问题二是由于字段大小写不一致导致的JSON反序列化失败,解决方案是在后端返回的JSON字符串中统一字段大小写或在Android端进行相应调整。
最低0.47元/天 解锁文章
1982

被折叠的 条评论
为什么被折叠?



