远程服务需要本地生成的Access-token,可以通过以下两种方式:
./bytomcli create-access-token test 或者 curl -X POST create-access-token -d '{"id":"test"}'1 m7 R3 d, h6 K( ~
然后获得access-token:* o: O! @" s9 [0 t, m+ x) \$ }4 ~" x
- “created_at”: “2018-05-18T16:00:25.284677605+08:00”,* t# b; e/ O% ~, k4 {# c5 C# z/ U
- “id”: “test”,& M" X4 p* j. S
- “token”:"test:fe50927ddaa5bcca77021e9f50fa5ef236a6140c012d1fe2eb9241f61a9228e4
test是账户,fe50927ddaa5bcca77021e9f50fa5ef236a6140c012d1fe2eb9241f61a9228e4是密码
postman的方式,设置Authorization为Basic Auth,然后填写账户名和密码% Y; \ x- `! n( q9 o% M
Java代码调用:
- String auth = Username + ":" + Password;) {. E5 G3 G; C; @2 \
- byte[] encodedAuth = Base64.encodeBase64(auth.getBytes(Charset.forName("US-ASCII")));
- String authHeader = "Basic " + new String(encodedAuth);
- Map header = new LinkedHashMap();. K8 v7 G& v6 o& _
- header.put("Authorization", authHeader);
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”} ,
交易费gas给少了
$ ^1 z9 ?4 E/ H( z
**3、reservation found outputs already reserved **9 N3 _/ `6 d5 E! N2 U! I4 N) |. p# H
表示该账户的utxo被暂时缓存,建议隔几分钟后再发该交易,一般是交易密码错误9 ~ d n/ n4 l1 r7 `( ~+ U
4、build里面那个ttl是干嘛用的?6 i+ `. X4 G7 y# F T
ttl表示utxo的缓存时间, reservation found outputs already reserved, 这个错误对应的时间,time_range 是为了延迟交易上链的一个时间戳,ttl 为 0 的话会采用默认的时间,大概2两个块的时间(五分钟),超过ttl不能重新 build-transaction* M3 H6 A0 a' G4 J2 [/ l, S! R& c
' S3 R: j# |6 s% X0 o" L
5、一笔交易最大可以支持多少上链数据?. ]+ L; P+ v0 P8 w0 b' ~* j1 B9 k
上链数据和gas上限有关,现在比原链数据上限为175000字节 = 170 KB
6、如何配置区块数据到指定位置
$ ./bytomd node --mining --home5 M$ R; z: q+ x2 F2 B6 J3 X
7、access-token接口访问失败9 S0 x8 I; a/ t% U
create-access-token. ^1 K% ~8 J5 ?; V1 q
list-access-tokens
delete-access-token
check-access-token' {" M! h+ h/ x
这四个接口只能本地访问,不能远程访问
% H1 l& U+ }! R! s; Y0 C" B8 h
比原的交易费如何计算
BTM的输出- 输入就是交易费6 K3 u' Y( l/ D5 Z; v/ K" i
) V- j( N/ _) S4 c5 [% g2 n
交易存储的arbitrary字段中存储的hex增加了6a14是什么意思?
使用varint可变长编码
arbitary: 6a + push指令 + 数据内容,其中6a是固定的,对应OP_FAIL指令,主要用于虚拟机读的格式作用