Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文

Bytom常见技术问题FAQ

李悔之2015
148 0 0
1、如何连接远程全节点服务器
( v! @# c" s" N$ {9 N- m远程服务需要本地生成的Access-token,可以通过以下两种方式:! Z+ g6 ^( D" U8 V) E; T4 Y4 C
./bytomcli create-access-token test  或者 curl -X POST create-access-token -d '{"id":"test"}'3 d& c! l: r3 M- V
然后获得access-token:- C% k, [9 C+ `, b3 j6 `6 W
  1. “created_at”: “2018-05-18T16:00:25.284677605+08:00”,
    + `) Y% E$ q4 F  I; K
  2. “id”: “test”,1 Z5 h4 d: G& l
  3. “token”:"test:fe50927ddaa5bcca77021e9f50fa5ef236a6140c012d1fe2eb9241f61a9228e4
复制代码
- e7 A. G$ W6 [9 @/ b1 L8 n
test是账户,fe50927ddaa5bcca77021e9f50fa5ef236a6140c012d1fe2eb9241f61a9228e4是密码
  D3 |% S2 F0 _, M7 spostman的方式,设置Authorization为Basic Auth,然后填写账户名和密码
  J) h  ]6 o  h' FJava代码调用:2 I5 u0 M9 L1 x, R; ]) o8 |: p; r" b! O
  1. String auth = Username + ":" + Password;* f- F3 ?8 Y1 H2 P
  2. byte[] encodedAuth = Base64.encodeBase64(auth.getBytes(Charset.forName("US-ASCII")));
    6 w% [7 s, ]- Z! g: w. b
  3. String authHeader = "Basic " + new String(encodedAuth);
    6 [5 A! b3 d5 Z. o5 l; O( N* S
  4. Map header = new LinkedHashMap();
    , A5 z4 _! |2 a6 {2 a# S
  5. header.put("Authorization", authHeader);
    ! D; ^- T/ Y7 {& o0 b9 Z
复制代码
3 Q% f9 p* L3 U' a
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”} ,
0 A) r6 q* `& p$ t* u0 Y9 E交易费gas给少了
: M7 ?# H8 [. R9 U& W! d. P; \1 D/ B9 ~
**3、reservation found outputs already reserved **( O" b% ?0 N$ y, E: O( N9 _. R
表示该账户的utxo被暂时缓存,建议隔几分钟后再发该交易,一般是交易密码错误
# W+ @, T6 T7 I( ^, t- O
3 |: T/ s3 `* s& ]4、build里面那个ttl是干嘛用的?
2 r% u: b4 W' a: f0 O+ O- Mttl表示utxo的缓存时间, reservation found outputs already reserved, 这个错误对应的时间,time_range 是为了延迟交易上链的一个时间戳,ttl 为 0 的话会采用默认的时间,大概2两个块的时间(五分钟),超过ttl不能重新 build-transaction
+ Y  o- I% k' D  @: w8 `1 t, }% j% g3 q, w5 c  o% b/ o
5、一笔交易最大可以支持多少上链数据?2 T3 l8 \- v* b! N. G# c0 i
上链数据和gas上限有关,现在比原链数据上限为175000字节 = 170 KB
) E6 E4 ?. P: x& x) O2 h
8 B$ c* ^8 L5 z& p$ H6、如何配置区块数据到指定位置
% T# h- F+ ^  R8 a$ ./bytomd node --mining --home' l- u$ g# _8 u1 s( i/ J
  : J, T3 s3 P  p, e, U' A
7、access-token接口访问失败
# j' z0 ]4 ~/ I4 O; ucreate-access-token
  |3 Y8 H  R. `9 W; Tlist-access-tokens4 [& E3 u& n0 X( M
delete-access-token3 O$ K; P& H8 L. d7 M* S6 A
check-access-token9 V" {8 t' o# r6 {" a5 V
这四个接口只能本地访问,不能远程访问
6 i) @  d* c& n' ]! s* g) f7 [7 x& d$ R' j* n0 }6 T
比原的交易费如何计算$ P9 p& T8 _: |* x* m( m; C
BTM的输出- 输入就是交易费
0 K  z1 v$ e7 d& A3 M0 _9 e, u
* @# g$ h1 W- G$ c& F; P. I6 l交易存储的arbitrary字段中存储的hex增加了6a14是什么意思?1 U  [- p+ j8 v6 }
使用varint可变长编码+ q/ _. w- k; a
arbitary: 6a + push指令 + 数据内容,其中6a是固定的,对应OP_FAIL指令,主要用于虚拟机读的格式作用
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

李悔之2015 初中生
  • 粉丝

    1

  • 关注

    0

  • 主题

    13