首页 > 解决方案 > Flutter 中的简单 GET API 请求

问题描述

我正在尝试在 REST 中使用简单的 GET 请求来抖动,但出现错误

代码:

Future<Map> timeStamp() async {
  const request =
      "https://armariosinteligentes.com/api/v3/timestamp";
  http.Response response = await http.get(request);
  print(json.decode(response.body));
}

json:{“时间戳”:1566397501}

    Error:  
    E/flutter ( 7041): [ERROR:flutter/lib/ui/ui_dart_state.cc(148)] Unhandled Exception: HandshakeException: Handshake error in client (OS Error:  
    E/flutter ( 7041):  BLOCK_TYPE_IS_NOT_01(padding.c:108) 
    E/flutter ( 7041):  PADDING_CHECK_FAILED(rsa_impl.c:641) 
    E/flutter ( 7041):  public key routines(a_verify.c:105) 
    E/flutter ( 7041):  CERTIFICATE_VERIFY_FAILED: certificate signature failure(handshake.cc:352)) E/flutter ( 7041): 
            #0      IOClient.send (package:http/src/io_client.dart:33:23) E/flutter ( 7041): <asynchronous suspension> E/flutter ( 7041): 
            #1      BaseClient._sendUnstreamed (package:http/src/base_client.dart:169:38) E/flutter ( 7041): <asynchronous suspension> E/flutter ( 7041): 
            #2     BaseClient.get (package:http/src/base_client.dart:32:7) E/flutter ( 7041): 
            #3      get.<anonymous closure> (package:http/http.dart:46:36) E/flutter ( 7041): 
            #4      _withClient (package:http/http.dart:166:20) E/flutter ( 7041): <asynchronous suspension> E/flutter ( 7041): 
            #5     get (package:http/http.dart:46:5) E/flutter ( 7041): 
            #6      timeStamp (package:armarios_inteligentes/screens/locker_screen.dart:196:34) E/flutter ( 7041): <asynchronous suspension> E/flutter ( 7041): 
            #7     LockerScreenState.build.<anonymous closure> (package:armarios_inteligentes/screens/locker_screen.dart:114:15) E/flutter ( 7041): 
            #8      _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:635:14) E/flutter ( 7041):
            #9      _InkResponseState.build.<anonymous closure> (package:flutter/src/material/ink_well.dart:711:32) E/flutter ( 7041):
            #10     GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:182:24) E/flutter ( 7041): #11     TapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:365:11) E/flutter ( 7041): 
            #12  TapGestureRecognizer.acceptGesture (package:flutter/src/gestures/tap.dart:312:7) E/flutter ( 7041): 
            #13   GestureArenaManager.sweep (package:flutter/src/gestures/arena.dart:156:27) E/flutter ( 7041):
            #14     _WidgetsFlutterBinding&BindingBase&GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:222:20) E/flutter ( 7041):
            #15     _WidgetsFlutterBinding&BindingBase&GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:198:22) E/flutter ( 7041):
            #16     _WidgetsFlutterBinding&BindingBase&GestureBinding._handlePointerEvent (package:flutter/src/gestures/binding.dart:156:7) E/flutter ( 7041):
            #17     _WidgetsFlutterBinding&BindingBase&GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:102:7) E/flutter ( 7041):
            #18     _WidgetsFlutterBinding&BindingBase&GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:86:7) E/flutter ( 7041):
            #19     _rootRunUnary (dart:async/zone.dart:1136:13) E/flutter ( 7041): 
            #20     _CustomZone.runUnary (dart:async/zone.dart:1029:19) E/flutter ( 7041): 
            #21     _CustomZone.runUnaryGuarded (dart:async/zone.dart:931:7) E/flutter ( 7041): 
            #22     _invoke1 (dart:ui/hooks.dart:250:10) E/flutter ( 7041): 
            #23     _dispatchPointerDataPacket (dart:ui/hooks.dart:159:5) E/flutter ( 7041):

标签: restapiflutter

解决方案


 timeStamp() async {
  final response =
  await http.get('http://armariosinteligentes.com/api/v3/timestamp');

  if (response.statusCode == 200) {
    // If server returns an OK response, parse the JSON.
    var jsonResponse = json.decode(response.body);
    tempoStamp tempo = new tempoStamp.fromJson(jsonResponse);
    var time = ('${tempo.timestamp}');
    return time;
  } else {
    // If that response was not OK, throw an error.
    throw Exception('Failed to load post');
  }
}

结果:1566411603


推荐阅读