Hi 游客

更多精彩,请登录!

比特池塘 区块链技术 正文

Bytom常见技术问题FAQ

李悔之2015
102 0 0
1、如何连接远程全节点服务器
# m3 s# L) `) }) ^远程服务需要本地生成的Access-token,可以通过以下两种方式:
+ ~# X. H9 S, f0 k( d, B  B, k# ^: I+ @./bytomcli create-access-token test  或者 curl -X POST create-access-token -d '{"id":"test"}'& q6 f) a, V' W! S. J
然后获得access-token:7 s: b  m. X% o- T6 ^6 i- ]6 g
  1. “created_at”: “2018-05-18T16:00:25.284677605+08:00”,
    ! ?9 k- Z& W* s; W/ S
  2. “id”: “test”,0 G) Q- g0 I4 u1 P# `
  3. “token”:"test:fe50927ddaa5bcca77021e9f50fa5ef236a6140c012d1fe2eb9241f61a9228e4
复制代码

5 e4 I& s3 @. C9 W6 h- x) ltest是账户,fe50927ddaa5bcca77021e9f50fa5ef236a6140c012d1fe2eb9241f61a9228e4是密码
, S) _# O6 G2 z$ W! Jpostman的方式,设置Authorization为Basic Auth,然后填写账户名和密码
& k* l+ L0 _6 k! s; L- bJava代码调用:
. g; b. I" B! w$ d" s5 i
  1. String auth = Username + ":" + Password;
    9 m4 X, \0 h, r. B& L
  2. byte[] encodedAuth = Base64.encodeBase64(auth.getBytes(Charset.forName("US-ASCII")));
    + S9 \. ^) V8 K/ v0 K7 ~
  3. String authHeader = "Basic " + new String(encodedAuth);. j3 L) b4 D. ^$ T, x
  4. Map header = new LinkedHashMap();( f* R! ]2 s1 Y' i& c2 w0 F% b
  5. header.put("Authorization", authHeader);
      p# Y+ j9 X* R. X, U
复制代码
# l: R9 J  ~4 r( I4 ^: H/ @
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”} ,
3 u6 Z& T% i$ m0 F' E交易费gas给少了
4 r- F) M% @# |# w& C7 u6 d2 X
( ^3 Q! i4 R, G**3、reservation found outputs already reserved **
5 O" M% h8 j8 C$ O* i表示该账户的utxo被暂时缓存,建议隔几分钟后再发该交易,一般是交易密码错误# M2 ~8 a4 \+ V7 j: ]- v

1 o( S8 |9 M: x7 x" U4、build里面那个ttl是干嘛用的?% `6 O9 l, h7 J( d' V  n3 [6 v
ttl表示utxo的缓存时间, reservation found outputs already reserved, 这个错误对应的时间,time_range 是为了延迟交易上链的一个时间戳,ttl 为 0 的话会采用默认的时间,大概2两个块的时间(五分钟),超过ttl不能重新 build-transaction
, Z2 R/ l) @5 H
6 W" R$ ~% \% Y; P5 T" a5、一笔交易最大可以支持多少上链数据?$ M  h2 v: g1 {+ X2 h
上链数据和gas上限有关,现在比原链数据上限为175000字节 = 170 KB
6 I* o% `% }' h5 R5 z
% s7 l. P1 W- A' g4 c6、如何配置区块数据到指定位置
9 q' w7 m: A, u* Q6 |5 ]) ]( R$ ./bytomd node --mining --home2 m. q! q0 f2 j/ V
  
' ^( j7 O' M$ ]8 i+ c. z) w2 R4 M0 t7、access-token接口访问失败1 ]/ }, A$ x7 {7 T! b
create-access-token8 `- b; j1 U+ L* h1 h- v5 v4 m: Y
list-access-tokens9 [# ?$ m! V! `. X9 f' ?
delete-access-token  Y) j5 O& g3 I0 M4 j4 p
check-access-token
) a* \( u. _5 M/ P( e/ S1 M% z$ c这四个接口只能本地访问,不能远程访问
/ x. w: s' J' h+ }  k" Y
" ^9 y' O$ ?2 h& ^2 e7 O* t' N9 S比原的交易费如何计算
; t2 D$ J$ V$ _, J: NBTM的输出- 输入就是交易费$ L* Z) @) k8 B  p, o
, E9 L) C% ~; w+ U/ i: D9 j
交易存储的arbitrary字段中存储的hex增加了6a14是什么意思?9 C1 n2 A( @3 w9 o
使用varint可变长编码: E: i4 j2 T8 {! p! w
arbitary: 6a + push指令 + 数据内容,其中6a是固定的,对应OP_FAIL指令,主要用于虚拟机读的格式作用
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

李悔之2015 初中生
  • 粉丝

    1

  • 关注

    0

  • 主题

    13