Пример #1
0
 def post(self):
     rpcconn = USDPProxy(g_IP, g_PORT)
     try:
         addr = self.get_argument("address")
         if len(addr) != 43:
             self.write(
                 json.dumps(
                     BaseHandler.error_ret_with_data("arguments error")))
             return
         if addr[:5] != "htdf1":
             self.write(
                 json.dumps(
                     BaseHandler.error_ret_with_data("arguments error")))
             return
         data = USDP_GetAccountInfo.account_info(rpcconn, addr)
         self.write(
             json.dumps(BaseHandler.success_ret_with_data(data),
                        default=decimal_default))
     except Exception as e:
         if str(e) == "500":
             self.write(
                 json.dumps(
                     BaseHandler.error_ret_with_data(
                         "error: not found any info of the account. Due to the account DOT NOT have transactions yet. "
                     )))
         else:
             self.write(
                 json.dumps(BaseHandler.error_ret_with_data("error: %s" %
                                                            e)))
         logging.error("USDP_GetAccountInfo error:{0} in {1}".format(
             e, get_linenumber()))
Пример #2
0
 def get(self):
     rpc_connection = OrientWaltProxy(ip_addr, port)
     try:
         blknumber = int(self.get_argument(
             "blknumber")) if self.get_argument("blknumber") else int(
                 OWT_BlockNumber.latest(rpc_connection))
         txindex = int(self.get_argument("txindex")) if self.get_argument(
             "txindex") else 0
         ret = OWT_GetTransactionFromBlock.process(rpc_connection,
                                                   blknumber, txindex)
         if not ret:
             self.write(
                 json.dumps(
                     BaseHandler.error_ret_with_data(
                         "no corresponding transaction or block body not found!!!"
                     )))
             return
         self.write(
             json.dumps(BaseHandler.success_ret_with_data(ret),
                        default=decimal_default))
     except Exception as e:
         self.write(
             json.dumps(BaseHandler.error_ret_with_data("error: %s" % e)))
         print("OWT_GetTransactionFromBlock error:{0} in {1}".format(
             e, get_linenumber()))
Пример #3
0
 def post(self):
     btc_rpc_connection = AuthServiceProxy(RPC_URL)
     try:
         src = self.get_argument_ex("src")
         dest = self.get_argument_ex("dest")
         if not isinstance(src, list):
             self.write(
                 json.dumps(
                     BaseHandler.error_ret_with_data(
                         "error: %s" % ("src must be json list"))))
             return
         if not isinstance(dest, list):
             self.write(
                 json.dumps(
                     BaseHandler.error_ret_with_data(
                         "error: %s" % ("dest must be json list"))))
             return
         ret, rsp = BTC_CreateRawTransactionEx_Collection.process(
             btc_rpc_connection, src, dest)
         if not ret:
             self.write(json.dumps(BaseHandler.error_ret_with_data(rsp)))
             return
         self.write(
             json.dumps(BaseHandler.success_ret_with_data(rsp),
                        default=decimal_default))
     except Exception as e:
         # traceback.print_exc()
         self.write(
             json.dumps(BaseHandler.error_ret_with_data("error: %s" % e)))
         logging.error("BTC_CreateRawTransactionEx error:{0} in {1}".format(
             e, get_linenumber()))
Пример #4
0
 def get(self):
     btc_rpc_connection = AuthServiceProxy(BTC_RPC_URL)#todo-junying-20180325
     try:
         addr = self.get_argument("address")
         data = BTC_ListUTXO.utxo(btc_rpc_connection,addr)
         if not data: self.write(json.dumps(BaseHandler.error_ret_with_data("utxo no available")))
         from utils import accumulate
         self.write(json.dumps(BaseHandler.success_ret_with_data(accumulate(data)), default=decimal_default))
     except Exception as e:
         self.write(json.dumps(BaseHandler.error_ret_with_data("error: %s"%e)))
         print("BTC_GetBalance error:{0} in {1}".format(e,get_linenumber()))
Пример #5
0
 def post(self):
     btc_rpc_connection = AuthServiceProxy(BTC_RPC_URL)#todo-junying-20190310
     try:
         src = self.get_argument_ex("src") if self.get_argument_ex("src") else ['2N8jq3e7eBhrrd9d1dMNCvkwtsvN9md2Hmd']
         dest = self.get_argument_ex("dest") if self.get_argument_ex("dest") else {'2MzrgJmFfHB1mz4QqwuSWePbb183TxHR1wA':'0.01'}
         ret, rsp = BTC_CreateRawTransactionEx.process(btc_rpc_connection,src,dest)
         if not ret: self.write(json.dumps(BaseHandler.error_ret_with_data(rsp))); return 
         self.write(json.dumps(BaseHandler.success_ret_with_data(rsp), default=decimal_default))
     except Exception as e:
         self.write(json.dumps(BaseHandler.error_ret_with_data("error: %s"%e)))
         print("BTC_CreateRawTransactionEx error:{0} in {1}".format(e,get_linenumber()))
Пример #6
0
 def post(self):
     rpcconn = USDPProxy(g_IP, g_PORT)
     try:
         address = self.get_argument("address")
         if len(address) != 43:
             self.write(json.dumps(BaseHandler.error_ret_with_data("arguments error")))
             return
         balance = USDP_GetBalance.get_balance(rpcconn, address)
         self.write(json.dumps(BaseHandler.success_ret_with_data(str(balance)), default=decimal_default))
     except Exception as e:
         self.write(json.dumps(BaseHandler.error_ret_with_data("error: %s"%e)))
         logging.error("USDP_GetBalance error:{0} in {1}".format(e,get_linenumber()))
Пример #7
0
 def post(self):
     rpcconn = USDPProxy(g_IP, g_PORT)
     try:
         strTxid = str(self.get_argument("txid")).strip()
         if len(strTxid) != 64:
             self.write(json.dumps(BaseHandler.error_ret_with_data("txid is invalid.")))
             return
         bValid = USDP_IsValidTx.isValidTx(rpcconn, strTxid)
         self.write(json.dumps(BaseHandler.success_ret_with_data(bValid), default=decimal_default))
     except Exception as e:
         self.write(json.dumps(BaseHandler.error_ret_with_data("error: %s"%e)))
         pass
Пример #8
0
 def post(self):
     btc_rpc_connection = AuthServiceProxy(OMNI_RPC_URL)#todo-junying-20190310
     try:
         from_addr = str(self.get_argument("from")) if self.get_argument("from") else '2N8jq3e7eBhrrd9d1dMNCvkwtsvN9md2Hmd'
         to_addr = str(self.get_argument("to")) if self.get_argument("to") else '2MzrgJmFfHB1mz4QqwuSWePbb183TxHR1wA'
         amount = float(self.get_argument("amount"))
         from btc.handler import BTC_CreateRawTransaction
         ret, rsp = BTC_CreateRawTransaction.process(btc_rpc_connection,from_addr,to_addr,amount)
         if not ret:
             self.write(json.dumps(BaseHandler.error_ret_with_data(rsp)))
             return 
         self.write(json.dumps(BaseHandler.success_ret_with_data(rsp), default=decimal_default))
     except Exception as e:
         self.write(json.dumps(BaseHandler.error_ret_with_data("error: %s"%e)))
         print("uBTC_CreateRawTransaction error:{0} in {1}".format(e,get_linenumber()))
Пример #9
0
    def post(self):
        rpc_connection = EthereumProxy(ip_addr, port)
        try:
            data = str(self.get_argument("data"))
            order_id = str(self.get_argument('orderId'))
            flag, txid = self.get_order_from_db(order_id)
            if flag:  #如果是已经广播过的则不再广播
                rspData = {'txid': txid, 'orderId': order_id}
                self.write(
                    json.dumps(BaseHandler.success_ret_with_data(rspData),
                               default=decimal_default))
                return

            # 0x checking
            rlpdata = "0x" + data if "0x" not in data else data
            # sending raw transaction
            txid = rpc_connection.eth_sendRawTransaction(rlpdata)
            self.insert_txid_into_db(order_id, txid)
            rspData = {'txid': txid, 'orderId': order_id}
            self.write(
                json.dumps(BaseHandler.success_ret_with_data(rspData),
                           default=decimal_default))
        except Exception as e:
            self.write(
                json.dumps(BaseHandler.error_ret_with_data("error: %s" % e)))
            logging.error("ETH_SendRawTransaction error:{0} in {1}".format(
                e, get_linenumber()))
Пример #10
0
    def get(self):
        # try:
        #     symbol = self.get_argument("symbol")
        # except :
        #     print('no symbol arg, default is eth')
        #     symbol = "etc"
        #     pass
        symbol = 'ETC'

        rpcconn = EthereumProxy(ip_addr, port)
        try:
            # if symbol.upper() == 'ERC20-USDT':
            #     symbol = 'USDT'
            # elif not symbol.isalpha() : #防止sql注入
            if not symbol.isalpha():  #防止sql注入
                raise Exception("invalid symbol, must token symbol")

            symbol = symbol.upper()
            # if symbol != 'ETH' and symbol not in ERC20_CONTRACTS_MAP.keys():
            if symbol != 'ETC':
                retData = []
            else:
                retData = self.proccess(rpcconn, symbol)  #从活跃地址表中获取地址信息
            self.write(
                json.dumps(BaseHandler.success_ret_with_data(retData),
                           default=decimal_default))
        except Exception as e:
            self.write(
                json.dumps(BaseHandler.error_ret_with_data("error: %s" % e)))
            logging.error(" ETH_CollectionQueryEx error:{0} in {1}".format(
                e, get_linenumber()))
Пример #11
0
    def post(self):
        try:

            port = XMR_WALLET_RPC_PORT_MANUAL if 'manual' in self.request.uri else XMR_WALLET_RPC_PORT_AUTO

            key_images = self.get_argument_from_json('signed_key_images')

            rpc = XMR_Proxy(protocol=XMR_RPC_PROTOCOL,
                            host=XMR_WALLET_RPC_HOST,
                            port=port,
                            verify_ssl_certs=False)

            rsp = rpc.import_key_images(key_images=key_images)

            #获取可用余额
            balances = rpc.balances()
            retdata = dict(rsp, **balances)

            self.write(
                json.dumps(BaseHandler.success_ret_with_data(retdata),
                           default=decimal_default))
            pass
        except Exception as e:
            self.write(
                json.dumps(BaseHandler.error_ret_with_data("error: %s" % e)))
            logging.error("XMR_ImportKeyImages error:{0} in {1}".format(
                e, get_linenumber()))
        pass
Пример #12
0
    def post(self):
        try:
            dsts = self.get_argument_from_json('destinations')
            assert isinstance(
                dsts, list
            ), "destinations must be list, eg:[{'address':'addr', 'amount':0.123}]]"

            port = XMR_WALLET_RPC_PORT_MANUAL if 'manual' in self.request.uri else XMR_WALLET_RPC_PORT_AUTO

            rpc = XMR_Proxy(protocol=XMR_RPC_PROTOCOL,
                            host=XMR_WALLET_RPC_HOST,
                            port=port,
                            verify_ssl_certs=False)

            rawtxs = rpc.transfer(destinations=dsts)
            assert isinstance(rawtxs, dict), 'rawtxs is not dict'

            retdata = rawtxs
            logging.info(f'retdata: {retdata}')
            self.write(
                json.dumps(BaseHandler.success_ret_with_data(retdata),
                           default=decimal_default))
            pass
        except Exception as e:
            self.write(
                json.dumps(BaseHandler.error_ret_with_data("error: %s" % e)))
            logging.error("XMR_CreateRawTransaction error:{0} in {1}".format(
                str(e), get_linenumber()))
        pass
Пример #13
0
    def post(self):
        try:
            cleos = EosProxy(url=EOS_PUBLIC_API_URL)

            signed_trx = self.get_argument_from_json("data")
            order_id = self.get_argument_from_json("orderId")

            is_exist, txid, tx_json = self.get_order_from_db(order_id)
            if is_exist:
                self.write(json.dumps(BaseHandler.success_ret_with_data(tx_json), default=decimal_default))
                return

            #如果没有广播过, 则进行广播
            data = cleos.sendrawtransaction(data=signed_trx, timeout=HTTP_TIMEOUT_SECS)

            self.write(json.dumps(BaseHandler.success_ret_with_data(data), default=decimal_default))

            #如果广播成功, 则写入数据库
            if data['processed']['error_code'] == None and data['processed']['except'] == None \
                and data['processed']['receipt']['status'] == 'executed':
                self.insert_txid_into_db(order_id=order_id, txid= data['transaction_id'], tx_json_str=json.dumps(data) )

        except Exception as e:
            self.write(json.dumps(BaseHandler.error_ret_with_data("error: %s" % e)))
            logging.error("EOS_CreateRawTransaction():{}".format( e))

        pass
Пример #14
0
 def post(self):
     rpc_connection = OrientWaltProxy(ip_addr, port)
     try:
         to_addr = str(self.get_argument("to")) if self.get_argument(
             "to") else '0xba1099cc91acdf45771d0a0c6e3b80e8e880c684'
         startgas = str(self.get_argument("startgas")) if self.get_argument(
             "startgas") else default_gas
         gas_price = str(
             self.get_argument("gasPrice")) if self.get_argument(
                 "gasPrice") else default_gasprice
         value = float(self.get_argument("value")) if self.get_argument(
             "value") else 0.1
         nonce = str(self.get_argument("nonce")) if self.get_argument(
             "nonce") else 0
         data = str(self.get_argument("data"))
         value_ = int(value * 10**18)
         # create raw transaction
         encoded = createRawTransaction(nonce, gas_price, startgas, to_addr,
                                        value_, data)
         # sending raw transaction
         self.write(
             json.dumps(BaseHandler.success_ret_with_data(encoded),
                        default=decimal_default))
     except Exception as e:
         self.write(
             json.dumps(BaseHandler.error_ret_with_data("error: %s" % e)))
         print("OWT_CreateRawTransaction error:{0} in {1}".format(
             e, get_linenumber()))
Пример #15
0
    def post(self):
        try:
            src_acct = self.get_argument("src_acct")
            dst_acct = self.get_argument("dst_acct")
            stramount = self.get_argument("amount")
            strmemo = self.get_argument("memo")

            src_acct = src_acct.strip()
            dst_acct = dst_acct.strip()
            stramount = stramount.strip()
            strmemo = strmemo.strip()

            if not EOS_GetAccountInfo.is_valid_acc_name(src_acct) \
                    or not EOS_GetAccountInfo.is_valid_acc_name(dst_acct):
                raise Exception(" src_acct or dst_acct is illegal ")

            if not isinstance(stramount, str) or Decimal(stramount) < Decimal('0.0001'):
                raise Exception(" amount is illegal ")

            if len(strmemo) > 20:
                raise Exception(" memo is too long")

            #直接截断,  不能使用  '%.4f' % Decimal('xxxx.xxxxxxx') , 因为会四舍五入
            decmlfmtamount = Decimal(stramount).quantize(Decimal("0.0000"), getattr(decimal, 'ROUND_DOWN'))
            strfmtamount = str(decmlfmtamount)


            data = EOS_CreateRawTransaction.process(src_acct, dst_acct, strfmtamount, strmemo)
            self.write(json.dumps(BaseHandler.success_ret_with_data(data), default=decimal_default))

        except Exception as e:
            self.write(json.dumps(BaseHandler.error_ret_with_data("error: %s" % e)))
            logging.error("EOS_CreateRawTransaction():{}".format(e))
        pass
Пример #16
0
    def post(self):

        try:

            address = self.get_argument("address")

            if len(address) != 34 or (not str(address).startswith('T')):
                raise Exception("invalid address")

            trx = Trx(
                Tron(full_node=TRON_RPC_URL,
                     solidity_node=TRON_RPC_URL,
                     event_server=TRON_RPC_URL))

            account_info = trx.get_account(address=address)

            if 'balance' in account_info:
                decBalance = Decimal(
                    account_info['balance']) / Decimal('1000000')
                fmtBalance = str(
                    decBalance.quantize(Decimal("0.000000"),
                                        getattr(decimal, 'ROUND_DOWN')))
            else:
                fmtBalance = '0.000000'

            self.write(
                json.dumps(BaseHandler.success_ret_with_data(fmtBalance),
                           default=decimal_default))

            pass
        except Exception as e:
            self.write(
                json.dumps(BaseHandler.error_ret_with_data("error: %s" % e)))
            logging.error("error:{0} in {1}".format(e, get_linenumber()))
Пример #17
0
    def get(self):
        rpcconn = AuthServiceProxy(RPC_URL)

        try:
            commands = [[
                "listunspent", 1, 99999999, [], True, {
                    'minimumAmount': 0.0003
                }
            ]]
            lstUtxos = rpcconn.batch_(commands)[0]
            mapRet = {}
            for utxo in lstUtxos:
                strAddr = utxo['address'].strip()
                if strAddr not in g_exUserAddrs: continue
                if strAddr not in mapRet:
                    mapRet[strAddr] = Decimal("0.0")
                nAmount = utxo['amount']
                mapRet[strAddr] = str(nAmount + Decimal(mapRet[strAddr]))
            self.write(
                json.dumps(BaseHandler.success_ret_with_data(mapRet),
                           default=decimal_default))
        except Exception as e:
            self.write(
                json.dumps(BaseHandler.error_ret_with_data("error: %s" % e)))
            logging.error("BTC_CollectionQuery error:{0} in {1}".format(
                e, get_linenumber()))
Пример #18
0
    def get(self):

        try:
            symbol = self.get_argument("symbol")
        except:
            logging.warning('no symbol arg, default is htdf')
            symbol = "htdf"
            pass

        rpcconn = USDPProxy(g_IP, g_PORT)
        try:
            token_full_name = symbol.upper()

            symbol = token_full_name.replace('HRC20-', '')
            if not symbol.isalpha():  #防止sql注入
                raise Exception("invalid symbol, must token symbol")

            if symbol.upper() == 'HTDF':
                retData = self.proccess(rpcconn)
            elif symbol in [
                    symb['symbol'] for symb in HRC20_CONTRACT_MAP.values()
            ]:
                retData = self.proccess_HRC20(rpcconn, symbol)
            else:
                raise Exception(f'invalid symbol `{symbol}`')
            self.write(
                json.dumps(BaseHandler.success_ret_with_data(retData),
                           default=decimal_default))
        except Exception as e:
            self.write(
                json.dumps(BaseHandler.error_ret_with_data("error: %s" % e)))
            logging.error(" USDP_CollectionQuery error:{0} in {1}".format(
                e, get_linenumber()))
Пример #19
0
 def get(self):
     btc_rpc_connection = AuthServiceProxy(BTC_RPC_URL)#todo-junying-20190310
     try:
         blknumber = BTC_GetBlockCount.process(btc_rpc_connection)
         self.write(json.dumps(BaseHandler.success_ret_with_data(blknumber), default=decimal_default))
     except Exception as e:
         self.write(json.dumps(BaseHandler.error_ret_with_data("error: %s"%e)))
         print("BTC_GetBlockCount error:{0} in {1}".format(e,get_linenumber()))
Пример #20
0
 def get(self):
     rpcconn = USDPProxy(g_IP, g_PORT)
     try:
         data = USDP_ListAccounts.addresses()
         self.write(json.dumps(BaseHandler.success_ret_with_data(data), default=decimal_default))
     except Exception as e:
         self.write(json.dumps(BaseHandler.error_ret_with_data("error: %s"%e)))
         logging.error("USDP_ListAccounts error:{0} in {1}".format(e,get_linenumber()))
Пример #21
0
 def post(self):
     btc_rpc_connection = AuthServiceProxy(OMNI_RPC_URL)#todo-junying-20180325
     try:
         data = OMNI_ListBlockTransActions.process(btc_rpc_connection,self.get_argument("blknumber"))
         self.write(json.dumps(BaseHandler.success_ret_with_data(data), default=decimal_default))
     except Exception as e:
         self.write(json.dumps(BaseHandler.error_ret_with_data("error: %s"%e)))
         print("BTC_GetTransaction error:{0} in {1}".format(e,get_linenumber()))
Пример #22
0
 def get(self):
     rpcconn = USDPProxy(g_IP, g_PORT)
     try:
         retData = self.proccess(rpcconn)
         self.write(json.dumps(BaseHandler.success_ret_with_data(retData), default=decimal_default))
     except Exception as e:
         self.write(json.dumps(BaseHandler.error_ret_with_data("error: %s"%e)))
         logging.error(" USDP_CollectionQuery error:{0} in {1}".format(e,get_linenumber()))
Пример #23
0
 def get(self):
     rpc_connection = UnitedProneProxy(ip_addr, port)
     try:
         address = self.get_argument("address")
         if len(address) != 42:
             self.write(
                 json.dumps(
                     BaseHandler.error_ret_with_data("arguments error")))
             return
         balance = UP_GetBalance.get_balance(rpc_connection, address)
         self.write(
             json.dumps(BaseHandler.success_ret_with_data([balance]),
                        default=decimal_default))
     except Exception as e:
         self.write(
             json.dumps(BaseHandler.error_ret_with_data("error: %s" % e)))
         print("UP_GetBalance error:{0} in {1}".format(e, get_linenumber()))
Пример #24
0
 def post(self):
     btc_rpc_connection = AuthServiceProxy(BTC_RPC_URL)#todo-junying-20180325
     try:
         data = BTC_DumpPrivKey.privkey(btc_rpc_connection,self.get_argument("address"))
         self.write(json.dumps(BaseHandler.success_ret_with_data(data), default=decimal_default))
     except Exception as e:
         self.write(json.dumps(BaseHandler.error_ret_with_data("error: %s"%e)))
         print("BTC_WalletPassphrase error:{0} in {1}".format(e,get_linenumber()))
Пример #25
0
 def get(self):
     btc_rpc_connection = AuthServiceProxy(BTC_RPC_URL)
     try:
         data = BTC_ListAccounts.addresses()
         self.write(json.dumps(BaseHandler.success_ret_with_data(data), default=decimal_default))
     except Exception as e:
         self.write(json.dumps(BaseHandler.error_ret_with_data("error: %s"%e)))
         print("BTC_ListAccounts error:{0} in {1}".format(e,get_linenumber()))
Пример #26
0
 def post(self):
     rpc_connection = OrientWaltProxy(ip_addr, port)
     try:
         from_addr = self.get_argument("from")
         passphrase = self.get_argument("passphrase").encode("utf-8")
         to_addr = self.get_argument("to")
         gas = self.get_argument("gas")
         gas_price = self.get_argument("gasPrice")
         value = self.get_argument("value")
         # check arguments
         _gas = int(gas) if not gas == '' else default_gas
         _gas_price = str_to_decimal(
             gas_price
         ) if not gas_price == '' else default_gasprice  # 10Gwei
         _value = str_to_decimal(value) * 10**18
         # checking balance
         ret, err_msg = OWT_SendTransaction.checkBalance(
             rpc_connection, from_addr, _value, _gas, _gas_price)
         if not ret:
             self.write(json.dumps(
                 BaseHandler.error_ret_with_data(err_msg)))
             return
         # unlocking account
         ret, err_msg = OWT_SendTransaction.unlockAccount(
             rpc_connection, from_addr, passphrase)
         if not ret:
             self.write(json.dumps(
                 BaseHandler.error_ret_with_data(err_msg)))
             return
         # sending money
         rsp = rpc_connection.owt_sendTransaction(to_addr, from_addr, _gas,
                                                  _gas_price, _value)
         if not rsp:
             self.write(
                 json.dumps(
                     BaseHandler.error_ret_with_data('transaction failed')))
             return
         self.write(
             json.dumps(BaseHandler.success_ret_with_data(rsp),
                        default=decimal_default))
     except Exception as e:
         self.write(
             json.dumps(BaseHandler.error_ret_with_data("error: %s" % e)))
         print("OWT_SendTransaction error:{0} in {1}".format(
             e, get_linenumber()))
Пример #27
0
 def get(self):
     omni_rpc_connection = AuthServiceProxy(OMNI_RPC_URL)#todo-junying-20180325
     try:
         commands = [["getaccountaddress",self.get_argument("account")]]
         data = omni_rpc_connection.batch_(commands)
         self.write(json.dumps(BaseHandler.success_ret_with_data(data), default=decimal_default))
     except Exception as e:
         self.write(json.dumps(BaseHandler.error_ret_with_data("error: %s"%e)))
         print("uBTC_GetAccountAddress error:{0} in {1}".format(e,get_linenumber()))
Пример #28
0
 def post(self):
     omni_rpc_connection = AuthServiceProxy(OMNI_RPC_URL)#todo-junying-20180325
     try:
         blknumber = int(self.get_argument("blknumber"))
         data = OMNI_CrawlTxData.process(omni_rpc_connection,blknumber)
         self.write(json.dumps(BaseHandler.success_ret_with_data(data), default=decimal_default))
     except Exception as e:
         self.write(json.dumps(BaseHandler.error_ret_with_data("error: %s"%e)))
         print("OMNI_ListTransActions error:{0} in {1}".format(e,get_linenumber()))
Пример #29
0
 def get(self):
     btc_rpc_connection = AuthServiceProxy(RPC_URL)
     try:
         addr = self.get_argument("address")
         data = BTC_ListUTXO.utxo(btc_rpc_connection, addr)
         if not data:
             self.write(json.dumps(BaseHandler.error_ret_with_data("0")))
             return
         from utils import accumulate
         self.write(
             json.dumps(BaseHandler.success_ret_with_data('%.8f' %
                                                          accumulate(data)),
                        default=decimal_default))
     except Exception as e:
         self.write(
             json.dumps(BaseHandler.error_ret_with_data("error: %s" % e)))
         logging.error("BTC_GetBalance error:{0} in {1}".format(
             e, get_linenumber()))
Пример #30
0
 def get(self):
     omni_rpc_connection = AuthServiceProxy(OMNI_RPC_URL)#todo-junying-20190313
     try:
         commands = [["omni_getbalance", self.get_argument("address"), OMNI_PROPERTY_ID]] # usdt: 31
         data = omni_rpc_connection.batch_(commands)
         self.write(json.dumps(BaseHandler.success_ret_with_data(data), default=decimal_default))
     except Exception as e:
         self.write(json.dumps(BaseHandler.error_ret_with_data("error: %s"%e)))
         print("OMNI_GetBalance error:{0} in {1}".format(e,get_linenumber()))