HTML
<form method="post">
<input type="hidden" name="OTP1" value="@ViewBag.otp" />
<input type="number" name="OTP2" required autofocus
class="gtxt " placeholder="OTP" /><br />
<p style="text-align:center">
<input type="submit" value="Submit" class="btn
btn-info gbtn" />
<a href="/Home">
<input type="button" value="Cancel" class="btn
btn-danger gbtn" /> </a><br />
<span style="color:red">@ViewBag.Err </span>
</p>
</form>
Action
public ActionResult otp()
{
SelectRepository ob = new SelectRepository();
Random obr = new Random();
int ran = obr.Next();
string otp = ran.ToString().Substring(0, 5);
string phone = "", url = "";
phone = "9999999999";
url = "https://2factor.in/API/V1/enter-your-key/SMS/" + phone + "/" + otp + "/OTP1"; WebRequest request =
HttpWebRequest.Create(url);
WebResponse response =
request.GetResponse();
StreamReader reader = new
StreamReader(response.GetResponseStream());
string urlText = reader.ReadToEnd(); // it takes the
response from your url. now you can use as your need
ViewBag.result = urlText; // for your reference output from SMS provider ViewBag.otp = otp; // otp saved for verification
return View();
}
Verifiy OTP
[HttpPost]
public ActionResult otp(LoginModel data)
{
if (Convert.ToInt32(data.OTP1) == Convert.ToInt32(data.OTP2))
{
return RedirectToAction("successurl", "actionname");
}
else
return RedirectToAction("err", "common", new { msg = "Invalid OTP", color = "red" });
}
No comments:
Post a Comment