Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文

Bytom常见技术问题FAQ

李悔之2015
106 0 0
1、如何连接远程全节点服务器0 r+ Z) h) @7 z! X
远程服务需要本地生成的Access-token,可以通过以下两种方式:
; A; r5 @% F3 u5 E, @8 j" y./bytomcli create-access-token test  或者 curl -X POST create-access-token -d '{"id":"test"}'
9 q! C7 r( g( @1 r然后获得access-token:  i7 z( x, j" `1 \! o* j- }1 ]7 L
  1. “created_at”: “2018-05-18T16:00:25.284677605+08:00”,
    ( W; g8 q3 D. x, D
  2. “id”: “test”,
    ' ~) q  J7 r" m% P7 }
  3. “token”:"test:fe50927ddaa5bcca77021e9f50fa5ef236a6140c012d1fe2eb9241f61a9228e4
复制代码
) u% E. b6 A3 W0 D$ A5 Q8 [& n
test是账户,fe50927ddaa5bcca77021e9f50fa5ef236a6140c012d1fe2eb9241f61a9228e4是密码
( K1 S/ U1 N3 \. z0 z2 L2 u0 gpostman的方式,设置Authorization为Basic Auth,然后填写账户名和密码1 e4 T9 f3 @7 G
Java代码调用:) b! D, v% D# T
  1. String auth = Username + ":" + Password;
      I8 R8 b6 D, u- o: _1 S3 d
  2. byte[] encodedAuth = Base64.encodeBase64(auth.getBytes(Charset.forName("US-ASCII")));- Q! y- z4 W/ i, D
  3. String authHeader = "Basic " + new String(encodedAuth);
    6 Y0 ^9 _( M0 L( p5 M* ^
  4. Map header = new LinkedHashMap();
      l: S( S  c9 r& f: q6 y
  5. header.put("Authorization", authHeader);
    # r" z$ g# n3 k# V1 S5 {" G
复制代码

6 [* G% k5 v8 o; A2 S& B% I- [# o/ ]2、错误:{“status”:“fail”,“msg”:“tx rejected: checking result 0: checking output source: checking value source: checking mux source 0: checking value source: checking issuance program: pushing initial argument 0: run limit exceeded”} ,( D2 P% ]$ H2 S: d3 }" {" j
交易费gas给少了
5 z5 E( w/ }  ~! g# G5 f2 N' A" `+ [
**3、reservation found outputs already reserved **
& t- ^1 E" o% B5 z5 Q" i+ g; r表示该账户的utxo被暂时缓存,建议隔几分钟后再发该交易,一般是交易密码错误
' q+ \# N5 q4 b% A3 S/ t4 s* E5 i# X4 M! w& h
4、build里面那个ttl是干嘛用的?8 |: X& V; Y7 l- S8 D6 v$ b
ttl表示utxo的缓存时间, reservation found outputs already reserved, 这个错误对应的时间,time_range 是为了延迟交易上链的一个时间戳,ttl 为 0 的话会采用默认的时间,大概2两个块的时间(五分钟),超过ttl不能重新 build-transaction# u( e" ~6 Q$ L4 ?) c) E0 e
" j" r3 L, G' @
5、一笔交易最大可以支持多少上链数据?' k- G+ z" P8 n6 g; _& M  n
上链数据和gas上限有关,现在比原链数据上限为175000字节 = 170 KB
- m8 j' ~; g: A( D3 D% u; j! X1 d! |/ l( a+ B
6、如何配置区块数据到指定位置
+ b3 O- B; f& e2 G" M( n" X( x$ ./bytomd node --mining --home7 b" [2 j4 F1 ?2 @
  
" b7 m9 S2 q* T2 O: O2 t7、access-token接口访问失败/ o, ?% y: E" Q0 N9 y
create-access-token1 {2 i2 g5 e; O9 {0 l4 o/ C
list-access-tokens' G( {. t) r5 \( `
delete-access-token
2 w8 R+ N* Q- c/ |2 S) K/ Kcheck-access-token. y' J  w: {% g3 @, R
这四个接口只能本地访问,不能远程访问
2 M$ `; x# \, l1 d3 F5 v6 k& q" G. y  z0 C8 N( w
比原的交易费如何计算
% o5 B+ W6 S# ?6 UBTM的输出- 输入就是交易费$ O3 u6 W. r. C3 {% l

% O1 ~5 `/ C" p% a. k( ]- w* r交易存储的arbitrary字段中存储的hex增加了6a14是什么意思?
$ {5 Z, k/ X$ g  W/ H# w1 l使用varint可变长编码$ r) U, ?& }) I1 \0 t9 R- j- C
arbitary: 6a + push指令 + 数据内容,其中6a是固定的,对应OP_FAIL指令,主要用于虚拟机读的格式作用
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

李悔之2015 初中生
  • 粉丝

    1

  • 关注

    0

  • 主题

    13