public async Task GetRequiredKeysTest() { var infoResp = await Api.GetInfo(CancellationToken.None); var info = infoResp.Result; var getRequiredKeysParams = new GetRequiredKeysParams { Transaction = new Transaction { Expiration = info.HeadBlockTime.AddSeconds(30), Region = 0, RefBlockNum = (ushort)(info.HeadBlockNum & 0xffff), RefBlockPrefix = (uint)BitConverter.ToInt32(Hex.HexToBytes(info.HeadBlockId), 4), MaxNetUsageWords = 0, MaxKcpuUsage = 0, DelaySec = 0, ContextFreeActions = new EOS.Models.Action[0], Actions = new[] { new EOS.Models.Action() { Account = "hackathon", Name = "transfer", Authorization = new[] { new PermissionLevel { Actor = "test1", Permission = "active" } }, Data = "000000008090b1ca000000008090b1cae8030000000000000056494d00000000", } } }, AvailableKeys = new[] { "EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV", "EOS7drQWvc7Mn7NK2PivjbAqLXMyBpvSNnZWnZC3CS61g1dhVK57o", "EOS8KLWY5tcczw6tTkk4UhfeZJrES7ECiFZAkChcR2mwsFcArURn7" } }; var resp = await Api.GetRequiredKeys(getRequiredKeysParams, CancellationToken.None); Console.WriteLine(resp.Error); Assert.IsTrue(resp.IsSuccess); Console.WriteLine(JsonConvert.SerializeObject(resp.Result)); var obj = await Api.CustomPostRequest <JObject>("v1/chain/get_required_keys", getRequiredKeysParams, CancellationToken.None); TestPropetries(resp.Result.GetType(), obj.Result); Console.WriteLine("----------------------------------------------------------------------------"); Console.WriteLine(JsonConvert.SerializeObject(obj)); }
/// <summary> /// /// /v1/chain/get_required_keys {"transaction":{"expiration":"2018-04-10T12:26:15","region":0,"ref_block_num":44,"ref_block_prefix":104196284,"max_net_usage_words":0,"max_kcpu_usage":0,"delay_sec":0,"context_free_actions":[],"actions":[{"account":"currency","name":"transfer","authorization":[{"actor":"currency","permission":"active"}],"data":"0000001e4d75af46000000008090b1ca4015e73b000000000456494d00000000"}]},"available_keys":["EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV","EOS7drQWvc7Mn7NK2PivjbAqLXMyBpvSNnZWnZC3CS61g1dhVK57o","EOS8KLWY5tcczw6tTkk4UhfeZJrES7ECiFZAkChcR2mwsFcArURn7"]} /// </summary> /// <param name="getRequiredKeysParams"></param> /// <param name="token"></param> /// <returns></returns> public async Task <OperationResult <GetRequiredKeysResult> > GetRequiredKeys(GetRequiredKeysParams getRequiredKeysParams, CancellationToken token) { var endpoint = "v1/chain/get_required_keys"; return(await CustomPostRequest <GetRequiredKeysResult>(endpoint, getRequiredKeysParams, token)); }
/// <summary> /// /// /v1/chain/get_required_keys {"transaction":{"expiration":"2018-04-10T12:26:15","region":0,"ref_block_num":44,"ref_block_prefix":104196284,"max_net_usage_words":0,"max_kcpu_usage":0,"delay_sec":0,"context_free_actions":[],"actions":[{"account":"currency","name":"transfer","authorization":[{"actor":"currency","permission":"active"}],"data":"0000001e4d75af46000000008090b1ca4015e73b000000000456494d00000000"}]},"available_keys":["EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV","EOS7drQWvc7Mn7NK2PivjbAqLXMyBpvSNnZWnZC3CS61g1dhVK57o","EOS8KLWY5tcczw6tTkk4UhfeZJrES7ECiFZAkChcR2mwsFcArURn7"]} /// </summary> /// <param name="args"></param> /// <param name="token"></param> /// <returns></returns> public async Task <OperationResult <GetRequiredKeysResult> > GetRequiredKeysAsync(GetRequiredKeysParams args, CancellationToken token) { var endpoint = $"{ChainUrl}/v1/chain/get_required_keys"; return(await CustomPutRequestAsync <GetRequiredKeysResult>(endpoint, args, token).ConfigureAwait(false)); }