本节主要介绍在操作账户时所涉及的一些接口参数。
创建账户
createAccount
创建账户,同步方式调用。
public MychainBase<ReplyTransactionReceipt> createAccount(CreateAccountRequest request)
参数 |
必选 |
类型 |
说明 |
request |
true |
CreateAccountRequest |
创建账户的请求 |
返回字段 |
字段类型 |
说明 |
result |
MychainBase< ReplyTransactionReceipt> |
MychainBaseResult 持有所有 response 类型。 |
MychainBase<ReplyTransactionReceipt> result = sdk.getAccountService().createAccount(
CreateAccountRequest.build(
adminAccount.getIdentity(), testAccount1, params
)
);
asyncCreateAccount
创建账户,异步方式调用。
public MychainBase<Response> asyncCreateAccount(CreateAccountRequest request, ICallback callback)
参数 |
必选 |
类型 |
说明 |
request |
true |
CreateAccountRequest |
创建账户的请求 |
callback |
true |
ICallback |
回调函数 |
返回字段 |
字段类型 |
说明 |
result |
MychainBaseResult |
MychainBaseResult 持有所有 response 类型。 |
MychainBase<Response> result = sdk.getAccountService().asyncCreateAccount(
CreateAccountRequest.build(adminAccount.getIdentity(), testAccount3, params),
new ICallback() {
@Override
public void onResponse(String txHash, Response response) {
System.out.println("async create account, txHash:" + txHash + ", result: " + response.getErrorCode());
}
});
CreateAccountRequest
创建账户所需要的参数:
参数 |
类型 |
说明 |
account |
Account |
待创建者账户 |
fromAccountId |
Identity |
创建者账户 ID |
mychainParams |
MychainParams |
接口通用扩展参数 |
转账
transferBalance
交易转帐,同步方式调用。
public MychainBase<ReplyTransactionReceipt> transferBalance(TransferBalanceRequest request)
参数 |
必选 |
类型 |
说明 |
request |
true |
TransferBalanceRequest |
交易转帐的请求 |
返回字段 |
字段类型 |
说明 |
result |
MychainBaseResult |
MychainBaseResult 持有所有 response 类型。 |
// 准备参数 params
MychainParams params = new MychainParams.Builder()
.gas(BigInteger.valueOf(40000))
.privateKeyList(adminPrivateKeys)
.build();
//转移余额
MychainBase<ReplyTransactionReceipt> result = sdk.getAccountService().transferBalance(
TransferBalanceRequest.build(testAccount1.getIdentity(),
testAccount2.getIdentity(),
new BigInteger(transferAmount+""),
params
)
);
asyncTransferBalance
交易转帐,异步方式调用。
public MychainBase<Response> asyncTransferBalance(TransferBalanceRequest request, ICallback callback)
参数 |
必选 |
类型 |
说明 |
request |
true |
TransferBalanceRequest |
交易转帐的请求 |
callback |
true |
ICallback |
回调函数 |
返回字段 |
字段类型 |
说明 |
result |
MychainBaseResult |
MychainBaseResult 持有所有 response 类型。 |
// 准备参数 params
MychainParams params = new MychainParams.Builder()
.gas(BigInteger.valueOf(40000))
.privateKeyList(adminPrivateKeys)
.build();
// 异步传输余额
MychainBase<Response> result = sdk.getAccountService().asyncTransferBalance(
TransferBalanceRequest.build(testAccount2.getIdentity(),
testAccount1.getIdentity(),
new BigInteger(transferAmount+""),
params),
(txHash, response) -> {
System.out.println("async transfer balance, txHash:"+txHash+", result: "+ response.getErrorCode());
}
);
TransferBalanceRequest
转账所需要的参数:
参数 |
类型 |
说明 |
fromAcctId |
Identity |
转出账户 |
toAcctId |
Identity |
转入账户 |
amount |
BigInteger |
转账金额 |
mychainParams |
MychainParams |
通用参数 |
设置恢复公钥
setRecoverKey
设置恢复公钥,同步方式调用。
public MychainBase<ReplyTransactionReceipt> setRecoverKey(SetRecoverKeyRequest request)
参数 |
必选 |
类型 |
说明 |
request |
true |
SetRecoverKeyRequest |
恢复公钥的请求 |
返回字段 |
字段类型 |
说明 |
result |
MychainBaseResult |
MychainBaseResult 持有所有 response 类型 |
// 准备参数 params
MychainParams params = new MychainParams.Builder()
.gas(BigInteger.valueOf(40000))
.privateKeyList(adminPrivateKeys)
.build();
MychainBase<ReplyTransactionReceipt> result = sdk.getAccountService().setRecoverKey(
SetRecoverKeyRequest.build(testAccount1.getIdentity(), newRecoverKey, params));
asyncSetRecoverKey
设置恢复公钥,异步方式调用。
public MychainBase<Response> asyncSetRecoverKey(SetRecoverKeyRequest request, ICallback callback)
参数 |
必选 |
类型 |
说明 |
request |
true |
SetRecoverKeyRequest |
恢复公钥的请求 |
callback |
true |
ICallback |
回调函数 |
返回字段 |
字段类型 |
说明 |
result |
MychainBase |
MychainBaseResult 持有所有 response 类型。 |
// 准备参数 params
MychainParams params = new MychainParams.Builder()
.gas(BigInteger.valueOf(40000))
.privateKeyList(adminPrivateKeys)
.build();
MychainBase<Response> result = sdk.getAccountService().asyncSetRecoverKey(
SetRecoverKeyRequest.build(testAccount1.getIdentity(), newRecoverKey, params),
new ICallback() {
@Override
public void onResponse(String txHash, Response response) {
System.out.println("async set recover key, txHash:" + txHash + ", result: "
+ response.getErrorCode());
}
});
SetRecoverKeyRequest
重置恢复公钥所需要的参数:
参数 |
类型 |
说明 |
acctId |
Identity |
要设置的账户 ID |
recoverPubKey |
String |
新的恢复公钥 |
mychainParams |
MychainParams |
通用参数 |
预重置公钥
preResetPubKey
预重置公钥,同步方式调用。
public MychainBase<ReplyTransactionReceipt> preResetPubKey(PreResetPubKeyRequest request)
参数 |
必选 |
类型 |
说明 |
request |
true |
PreResetPubKeyRequest |
预重置公钥的请求 |
返回字段 |
字段类型 |
说明 |
result |
MychainBase |
MychainBaseResult 持有所有 response 类型。 |
// 准备参数 params
MychainParams params = new MychainParams.Builder()
.gas(BigInteger.valueOf(40000))
.privateKeyList(adminPrivateKeys)
.build();
// 预重置
MychainBase<ReplyTransactionReceipt> result = sdk.getAccountService().preResetPubKey(PreResetPubKeyRequest.build( acctId, params));
asyncPreResetPubKey
预重置公钥,异步方式调用。
public MychainBase<Response> asyncPreResetPubKey(PreResetPubKeyRequest request, ICallback callback)
参数 |
必选 |
类型 |
说明 |
request |
true |
PreResetPubKeyRequest |
预重置公钥的请求 |
callback |
true |
ICallback |
回调函数 |
返回字段 |
字段类型 |
说明 |
result |
MychainBase |
MychainBaseResult 持有所有 response 类型。 |
// 准备参数 params
MychainParams params = new MychainParams.Builder()
.gas(BigInteger.valueOf(40000))
.privateKeyList(adminPrivateKeys)
.build();
MychainBase<Response> response = sdk.getAccountService().asyncPreResetPubKey(
PreResetPubKeyRequest.build(accId, params), new ICallback() {
@Override
public void onResponse(String txHash, Response response) {
}
});
PreResetPubKeyRequest
预重置公钥所需要的参数:
参数 |
类型 |
说明 |
acctId |
Identity |
要预重置的账户 ID |
mychainParams |
MychainParams |
通用参数 |
重置公钥
resetPubKey
重置公钥,同步方式调用。
public MychainBase<ReplyTransactionReceipt> resetPubKey(ResetPubKeyRequest request)
参数 |
必选 |
类型 |
说明 |
request |
true |
ResetPubKeyTransaction |
重置公钥的请求 |
返回字段 |
字段类型 |
说明 |
result |
MychainBase |
MychainBaseResult 持有所有 response 类型。 |
// 准备参数 params
MychainParams params = new MychainParams.Builder()
.gas(BigInteger.valueOf(40000))
.privateKeyList(adminPrivateKeys)
.build();
// 重置公钥
MychainBase<Response> response = sdk.getAccountService().resetPubKey(
ResetPubKeyRequest.build(testAccount1.getIdentity(), authMap, params));
asyncResetPubKey
重置公钥,异步方式调用。
public MychainBase<Response> asyncResetPubKey(ResetPubKeyRequest request,ICallback callback)
参数 |
必选 |
类型 |
说明 |
request |
true |
ResetPubKeyRequest |
重置公钥的请求 |
callback |
true |
ICallback |
回调函数 |
返回字段 |
字段类型 |
说明 |
result |
MychainBase |
MychainBaseResult 持有所有 response 类型。 |
// 准备参数 params
MychainParams params = new MychainParams.Builder()
.gas(BigInteger.valueOf(40000))
.privateKeyList(adminPrivateKeys)
.build();
// 重置公钥
MychainBase<Response> response = sdk.getAccountService().asyncResetPubKey(
ResetPubKeyRequest.build(testAccount1.getIdentity(), beforeAuthMap, params),
new ICallback() {
@Override
public void onResponse(String txHash, Response response) {
System.out.println("async reset pubkey, txHash:" + txHash + ", result: " + response.getErrorCode());
}
});
ResetPubKeyRequest
重置公钥所需要的参数:
参数 |
类型 |
说明 |
acctId |
Identity |
要重置的账户 ID |
mychainParams |
MychainParams |
通用参数 |
更新权重
updateAuthMap
更新权重,同步方式调用。
public MychainBase<ReplyTransactionReceipt> updateAuthMap(UpdateAuthMapRequest request)
参数 |
必选 |
类型 |
说明 |
request |
true |
UpdateAuthMapRequest |
更新权重的请求 |
返回字段 |
字段类型 |
说明 |
result |
MychainBase |
MychainBaseResult 持有所有 response 类型。 |
// 准备参数 params
MychainParams params = new MychainParams.Builder()
.gas(BigInteger.valueOf(40000))
.privateKeyList(adminPrivateKeys)
.build();
// 更新认证图
MychainBase<ReplyTransactionReceipt> response = sdk.getAccountService().updateAuthMap(
UpdateAuthMapRequest.build(testAccount1.getIdentity(), beforeAuthMap, params));
asyncUpdateAuthMap
更新权重,异步方式调用。
public MychainBase<Response> asyncUpdateAuthMap(UpdateAuthMapRequest request,ICallback callback)
参数 |
必选 |
类型 |
说明 |
request |
true |
UpdateAuthMapRequest |
更新权重的请求 |
callback |
true |
ICallback |
回调函数 |
返回字段 |
字段类型 |
说明 |
result |
MychainBase |
MychainBaseResult 持有所有 response 类型。 |
// 准备参数 params
MychainParams params = new MychainParams.Builder()
.gas(BigInteger.valueOf(40000))
.privateKeyList(adminPrivateKeys)
.build();
AuthMap beforeAuthMap = sdk.getQueryService()
.queryAccount(testAccount1.getIdentity().hexStrValue()).getData().getAccount().getAuthMap();
for (Map.Entry<String, Integer> entry : beforeAuthMap.getAuthMap().entrySet()) {
beforeAuthMap.updateAuth(entry.getKey(), entry.getValue() + 10);
}
MychainBase<Response> result = sdk.getAccountService().asyncUpdateAuthMap(
UpdateAuthMapRequest.build(testAccount1.getIdentity(), beforeAuthMap, params),
new ICallback() {
@Override
public void onResponse(String txHash, Response response) {
System.out.println("async update auth map, txHash:" + txHash + ", result: " + response.getErrorCode());
}
});
UpdateAuthMapRequest
更新权重所需要的参数:
参数 |
类型 |
说明 |
acctId |
Identity |
要设置的账户 ID |
authMap |
AuthMap |
新的权重 |
mychainParams |
MychainParams |
通用参数 |
冻结账户
freezeAccount
冻结账户,同步方式调用。
public MychainBase<ReplyTransactionReceipt> freezeAccount(FreezeAccountRequest request)
参数 |
必选 |
类型 |
说明 |
request |
true |
FreezeAccountRequest |
冻结账户的请求 |
返回字段 |
字段类型 |
说明 |
result |
MychainBase |
MychainBaseResult 持有所有 response 类型。 |
// 准备参数 params
MychainParams params = new MychainParams.Builder()
.gas(BigInteger.valueOf(40000))
.privateKeyList(adminPrivateKeys)
.build();
// 冻结账户
MychainBase<ReplyTransactionReceipt> result = sdk.getAccountService().freezeAccount(
FreezeAccountRequest.build(adminAccount.getIdentity(), testAccount1.getIdentity(),
params))
asyncFreezeAccount
冻结账户,异步方式调用。
public MychainBase<Response> asyncFreezeAccount(FreezeAccountRequest request,ICallback callback)
参数 |
必选 |
类型 |
说明 |
request |
true |
FreezeAccountRequest |
冻结账户的请求 |
callback |
true |
ICallback |
回调函数 |
返回字段 |
字段类型 |
说明 |
result |
MychainBase |
MychainBaseResult 持有所有 response 类型。 |
// 准备参数 params
MychainParams params = new MychainParams.Builder()
.gas(BigInteger.valueOf(40000))
.privateKeyList(adminPrivateKeys)
.build();
// 异步冻结帐户
MychainBase<Response> result = sdk.getAccountService().asyncFreezeAccount(
FreezeAccountRequest.build(adminAccount.getIdentity(), testAccount1.getIdentity(),
params), new ICallback() {
@Override
public void onResponse(String txHash, Response response) {
assertNotNull(txHash);
assertTrue(response.getErrorCode().isSuccess());
}
});
FreezeAccountRequest
冻结账户请求所需要的参数:
参数 |
类型 |
说明 |
from |
Identity |
冻结账户的操作者 ID |
to |
Identity |
待冻结的账户 ID |
mychainParams |
MychainParams |
通用参数 |
解冻账户
unFreezeAccount
解除冻结账户,同步方式调用。
public MychainBase<ReplyTransactionReceipt> unFreezeAccount(UnfreezeAccountRequest request)
参数 |
必选 |
类型 |
说明 |
request |
true |
UnfreezeAccountRequest |
解除冻结账户的请求 |
返回字段 |
字段类型 |
说明 |
result |
MychainBase<ReplyTransactionReceipt> |
MychainBaseResult 持有所有 response 类型。 |
// 准备参数 params
MychainParams params = new MychainParams.Builder()
.gas(BigInteger.valueOf(40000))
.privateKeyList(adminPrivateKeys)
.build();
// 解除冻结账户
MychainBase<ReplyTransactionReceipt> result2 = sdk.getAccountService()
.unFreezeAccount(
UnfreezeAccountRequest.build(adminAccount.getIdentity(),
testAccount1.getIdentity(), params));
asyncUnFreezeAccount
解除冻结账户,异步方式调用。
public MychainBase<Response> asyncUnFreezeAccount(UnfreezeAccountRequest request,ICallback callback)
参数 |
必选 |
类型 |
说明 |
request |
true |
UnfreezeAccountRequest |
解除冻结账户的请求 |
callback |
true |
ICallback |
回调函数 |
返回字段 |
字段类型 |
说明 |
result |
MychainBase |
MychainBaseResult 持有所有 response 类型。 |
// 准备参数 params
MychainParams params = new MychainParams.Builder()
.gas(BigInteger.valueOf(40000))
.privateKeyList(adminPrivateKeys)
.build();
// 异步解除冻结账户
MychainBase<Response> result2 = sdk.getAccountService().asyncUnFreezeAccount(
UnfreezeAccountRequest.build(adminAccount.getIdentity(), testAccount1.getIdentity(),
params), new ICallback() {
@Override
public void onResponse(String txHash, Response response) {
assertNotNull(txHash);
assertTrue(response.getErrorCode().isSuccess());
}
});
UnfreezeAccountRequest
解冻账户请求所需要的参数:
参数 |
类型 |
说明 |
from |
Identity |
解冻账户的操作者 ID |
to |
Identity |
待解冻的账户 ID |
mychainParams |
MychainParams |
通用参数 |
在文档使用中是否遇到以下问题
更多建议
匿名提交