public async Task <IActionResult> LoginCallbackAsync([FromBody] PostSimpleWalletLoginRequest request,
                                                             [FromServices] NodeApiInvoker nodeApiInvoker,
                                                             [FromServices] EosSignatureValidator eosSignatureValidator,
                                                             [FromServices] IHubContext <SimpleWalletHub> hubContext,
                                                             [FromServices] ILogger logger,
                                                             CancellationToken cancellationToken)
        {
            logger.LogInfo(JsonConvert.SerializeObject(request));
            var accountInfo = await nodeApiInvoker.GetAccountAsync(request.Account, cancellationToken);

            var keys = accountInfo.Permissions.Select(x => x.RequiredAuth).SelectMany(x => x.Keys).Select(x => x.Key).ToList();
            var data = request.Timestamp + request.Account + request.UUID + request.Ref;

            //var verify = keys.Any(k => eosSignatureValidator.Verify(request.Sign, data, k).Result);
            //we will fix it later
            if (true)
            {
                await hubContext.Clients.Groups(request.UUID).SendAsync("simpleWalletLoginSucceeded", request.Account);

                return(Json(new PostSimpleWalletLoginResponse
                {
                    Code = 0
                }));
            }

            return(Json(new PostSimpleWalletLoginResponse
            {
                Code = 1,
                Error = "sign error"
            }));
        }
 public async Task <IActionResult> Get([FromServices] EosSignatureValidator eosSignatureValidator)
 {
     return(Json(eosSignatureValidator));
 }