public async Task <IActionResult> Index(string ssn) { var remoteIp = HttpContext.Connection.RemoteIpAddress; var ip = remoteIp.IsIPv4MappedToIPv6 ? remoteIp.MapToIPv4().ToString() : remoteIp.ToString(); var response = await Bankid.CertAsync(ssn, ip); ViewBag.Check = "true"; return(View(response)); }
public async Task <IActionResult> ThisDevice(string ssn) { var remoteIp = HttpContext.Connection.RemoteIpAddress; var ip = remoteIp.IsIPv4MappedToIPv6 ? remoteIp.MapToIPv4().ToString() : remoteIp.ToString(); var response = await Bankid.QrCode(ssn, ip); ViewBag.ThisDevice = "bankid:///?autostarttoken=" + response.autoStartToken; return(View("Index")); }
public async Task <IActionResult> QrCode(string ssn) { var remoteIp = HttpContext.Connection.RemoteIpAddress; var ip = remoteIp.IsIPv4MappedToIPv6 ? remoteIp.MapToIPv4().ToString() : remoteIp.ToString(); var response = await Bankid.QrCode(ssn, ip); using (MemoryStream ms = new MemoryStream()) { QRCodeGenerator qrGenerator = new QRCodeGenerator(); QRCodeData qrCodeData = qrGenerator.CreateQrCode("bankid:///?autostarttoken=" + response.autoStartToken, QRCodeGenerator.ECCLevel.Q); QRCode qrCode = new QRCode(qrCodeData); using (Bitmap bitMap = qrCode.GetGraphic(20)) { bitMap.Save(ms, ImageFormat.Png); ViewBag.QRCodeImage = "data:image/png;base64," + Convert.ToBase64String(ms.ToArray()); } } return(View("Index")); }