0

我正在尝试JSON使用 Kotlin 中的编码从 GitHub 的要点中获取。我收到回复为

E/tag: Response{protocol=http/1.1, code=200, message=OK, url=https://api.github.com/gists/02d3e6e910739c35fc7d14b3fd16466a} 

我想获取json响应。

这就是我将 URL 称为我的 dis 代码的方式MainActivity

private val retrofit= Retrofit.Builder().baseUrl("https://api.github.com/")
    .addConverterFactory(GsonConverterFactory.create())
    .build()

private val postsApi = retrofit.create(RequestApi::class.java)
private val response= postsApi.getAllData()

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    response.enqueue(object: Callback<NewResponse>{
        override fun onFailure(call: Call<NewResponse>, t: Throwable) {
           //To change body of created functions use File | Settings | File Templates.
        }

        override fun onResponse(call: Call<NewResponse>, response: Response<NewResponse>) {
            //To change body of created functions use File | Settings | File Templates.
            val mResponse= response.raw().toString()
            Log.e("tag", mResponse)
        }
    })
}

我的请求代码

interface RequestApi {

@GET("gists/02d3e6e910739c35fc7d14b3fd16466a")
fun getAllData(): Call<NewResponse>
}

我的 CVResponse 课程是

class CVResponse {

@SerializedName("data")
val data: Data? = null
}

我想像下面这样获取json

{
   “数据”:{
      “名称”:“玛丽亚”,
      “总结”:“可爱且敬业的 IT 顾问,在一家快节奏的金融科技公司拥有超过 5 年的经验。渴望提供出色的分析和计算机技能,以帮助 ABC Inc 扩大其客户群。曾担任顶级公司认可的职位- 广泛的质量满意度评级。",
      “技能”:[
         {
            "type":"设计语言",
            “语言”:[
               "HTML",
               "XML",
               “CSS”
            ]
         },
         {
            “类型”:“语言”,
            “语言”:[
               “爪哇”,
               “C#”,
               "C++",
               “科特林”
            ]
         },
         {
            "type":"脚本语言",
            “语言”:[
               “Javascript”
            ]
         },
         {
            "type":"服务器语言",
            “语言”:[
               “PHP”
            ]
         },
         {
            "type":"操作系统",
            “语言”:[
               “视窗”,
               “苹果电脑”,
               “安卓”
            ]
         },
         {
            “类型”:“数据库”,
            “语言”:[
               “石榴石”,
               "SQL",
               “MySQL”
            ]
         },
         {
            “类型”:“框架”,
            “语言”:[
               “网豆”,
               “蚀”,
               “ADT 捆绑包”
            ]
         }
      ],
      “教育背景”:[
         {
            "position":"IBM 研究生",
            “专业”:“国际商务”,
            “来自”:“2018”,
            “到”:“2019”,
            "institute_name":"道格拉斯学院"
         },
         {
            "position":"信息通信技术研究生",
            “专业”:“信息技术”,
            “来自”:“2017”,
            “到”:“2018”,
            "institute_name":"道格拉斯学院"
         },
         {
            "position":"CSE 学士",
            “专业”:“计算机科学”,
            “来自”:“2010”,
            “到”:“2014”,
            "institute_name":"道格拉斯学院"
         }
      ]
   }
}
4

1 回答 1

0

调用response.body()以检索 NewResponse 对象。考虑为方法上的其他 HTTP 状态代码添加错误处理onResponse()。提醒一下,“response.body()”的返回值可能为 null,因此处理这种情况也是一个好主意。

于 2019-10-18T22:39:14.847 回答