zoukankan      html  css  js  c++  java
  • json_rpc_2 implementation

    https://stackoverflow.com/questions/52670255/flutter-json-rpc-2-implementation

    import 'dart:convert';
    
    import 'package:flutter/material.dart';
    import 'package:json_rpc_2/json_rpc_2.dart' as json_rpc;
    import 'package:web_socket_channel/io.dart';
    
    class SymbolDetails extends StatelessWidget {
      final String symbolId;
    
      SymbolDetails({this.symbolId});
    
      @override
      Widget build(BuildContext context) {
        var _api = IOWebSocketChannel.connect('wss://api.hitbtc.com/api/2/ws');
        var client = json_rpc.Client(_api.cast());
        client.sendNotification(
          'subscribeTicker',
          {'symbol': '$symbolId'},
        );
        return Scaffold(
          appBar: AppBar(
            title: Text('$symbolId details'),
          ),
          body: StreamBuilder(
            stream: _api.stream,
            builder: (BuildContext context, AsyncSnapshot snapshot) {
              if (snapshot.connectionState == ConnectionState.none) {
                return Center(
                  child: Text('Please check your internet connection'),
                );
              } else if (!snapshot.hasData) {
                return Center(child: CircularProgressIndicator());
              }
              String _snapshotData = snapshot.data;
              Map _response = json.decode(_snapshotData);
              return ListView(
                children: [
                  ListTile(
                    title: Text('Ask price:'),
                    trailing: Text(
                      '${_response['params']['ask']}',
                      style: TextStyle(fontWeight: FontWeight.bold),
                    ),
                  ),
                  ListTile(
                    title: Text('Bid price:'),
                    trailing: Text(
                      '${_response['params']['bid']}',
                      style: TextStyle(fontWeight: FontWeight.bold),
                    ),
                  ),
                ],
              );
            },
          ),
        );
      }
    }
    

      

     

  • 相关阅读:
    搜索框用定时器限制发送请求
    vue的生命周期,钩子函数
    事件委托的实现流程
    在vscode中快速生成vue模板
    JS继承
    各种宽高
    ES6新特性
    python入门学习一
    字符编码
    npm install --save 与 npm install --save-dev 的区别
  • 原文地址:https://www.cnblogs.com/pythonClub/p/10903725.html
Copyright © 2011-2022 走看看