【问题标题】:Invalid JSON String on response in android-apolloandroid-apollo 中响应的无效 JSON 字符串
【发布时间】:2018-03-30 00:03:30
【问题描述】:

我发送了简单的突变,我期待的是 JSON,但响应字符串是这样的:

{
   facebook=https://www.facebook.com/, 
   linkedIn=https://www.linkedin.com/  
}

如何解决?

【问题讨论】:

    标签: android json kotlin graphql apollo-client


    【解决方案1】:

    这好像是URL参数,用这个方法转回JSON String格式:

    public static String urlParamsToJSON(String urlParams) {
        urlParams = urlParams.replaceAll("=", "\":\"");
        urlParams = urlParams.replaceAll("&", "\",\"");
        return "{\"" + urlParams + "\"}";
    }
    

    【讨论】:

      【解决方案2】:
      object HelperJSON {
          private var gson: Gson = Gson()
          fun fetchSocialUrls(jsonString: String): SocialLoginUrlInfo {
              Log.e("JSONHelper ", "Enter: " + jsonString)
              return gson.fromJson(jsonString, SocialLoginUrlInfo::class.java)
          }
      
          fun toJsonString(simpleObject: Any?): String = gson.toJson(simpleObject)
      }
      

      在演示者中:

      socialLoginUrl = HelperJSON.fetchSocialUrls(HelperJSON.toJsonString(response.data()?.socialLoginUrls()))
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-04-12
        • 2015-04-23
        • 1970-01-01
        • 2013-03-17
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多