首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何处理http错误(FormatException:输入的意外结束(在字符1处))

如何处理http错误(FormatException:输入的意外结束(在字符1处))
EN

Stack Overflow用户
提问于 2019-05-22 03:12:23
回答 2查看 6.7K关注 0票数 1

如何处理这种错误信息?它为什么要来?这是问题吗?我每10秒调用一次下面的方法。

代码语言:javascript
复制
   checkQuick(String url, String token) async {
    result =
        (await HelperDatabase1().displayGetUserPreference()).elementAt(0)?.data;
    final response = await http.get(
      '$url/nativeapi/v1.0/User/GetUserPreference',
      headers: {'Authorization': 'Bearer $token'},
    );
    final jsonResponse = json.decode(response.body);
    GetUserPreference model = GetUserPreference.fromJson(jsonResponse);
    var data = GetUserPreference(data: model.data);
    //result = data.data;

      if (result != data.data) {
     //  await HelperDatabase1().updateGetUserPreference(1, data.data);
        print('inside');
        await HelperDatabase1().deleteGetUserPreference();
        await HelperDatabase1().storeGetUserPreference(url, token);
      }
  }

下面出现了几次错误信息。

代码语言:javascript
复制
E/flutter ( 7148): [ERROR:flutter/lib/ui/ui_dart_state.cc(148)] Unhandled Exception: FormatException: Unexpected end of input (at character 1)
E/flutter ( 7148): 
E/flutter ( 7148): ^
E/flutter ( 7148): 

E/颤振( 7148):#0 (dart:convert-patch/convert_patch.dart:1392:5) E/ _ChunkedJsonParser.fail ( 7148):#1 _ChunkedJsonParser.close (省:转换-补丁/转换_补丁:510:7)E/颤振( 7148):#2 _parseJson (省:30:10)E/颤振( 7148):#3 JsonDecoder.convert (飞镖:转换/json.dart:493:36)E/颤振( 7148): 4 JsonCodec.decode (飞镖:转换/json.dart:151:41)E/ _ListPageState.checkQuick:#5 (package:reborn_next_job02/ui/AssetRegisters.dart:153:31) E/颤振( 7148):E/颤振( 7148):#6 _ListPageState.initState。(package:reborn_next_job02/ui/AssetRegisters.dart:47:7) E/ _rootRunUnary ( 7148):#7 _CustomZone.runUnaryGuarded (飞镖:异步/飞镖:1132:38)E/颤振( 7148):#8 _CustomZone.runUnary (飞镖:1029:19)E/颤振( 7148):#9 _CustomZone.runUnaryGuarded _CustomZone.bindUnaryCallbackGuarded。(飞镖:968:26)E/颤振( 7148):#11 _rootRunUnary (飞镖:异步/zone.dart:1136:13)E/颤振( 7148):#12 _CustomZone.runUnary (飞镖:异步/zone.dart:1029:19)E/ _CustomZone.bindUnaryCallback ( 7148):#13 _CustomZone.bindUnaryCallback。(飞镖:异步/左转:952:26)E/颤振( 7148):#14 _Timer._runTimers (飞镖:隔离-补丁/计时器_注入)E/颤振( 7148):#15 _Timer._handleMessage (飞镖:隔离-补丁/计时器_注入:416:5)E/颤振( 7148):#16 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:171:12)

EN

回答 2

Stack Overflow用户

发布于 2019-05-22 08:52:06

检查response.statusCode之前,如果它是200。看起来response.body是空的,因为调用失败了,所以json.decode(response.body)抛出一个异常。

票数 2
EN

Stack Overflow用户

发布于 2022-06-24 03:26:10

可能是服务器端的。我曾经使用过一个ruby后端,它需要在url路径的末尾添加'.json‘。试试看。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56248795

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档