簡體   English   中英

如何使用Asp.net MVC 5在基於令牌的身份驗證Web API中使用提交按鈕注冊登錄?

[英]How to register login using submit button in token based authentication web api using Asp.net MVC 5?

我是Asp.net MVC的新手

我正在嘗試進行注冊 ,我的參數是電子郵件,密碼,確認密碼

我不想使用ajax。 我想使用submit button執行。 我在部分視圖上嘗試了以下代碼

@using ProTest.Models
@model RegisterBindingModel

@Html.BeginForm("Register", "Account"){ 
    @Html.TextBoxFor(si => si.Email, new {@class = "form-control",@id = "txtEmail" })
    @Html.TextBoxFor(si => si.Password, new { @class = "form-control", @id = "txtPassword", @type="password" })
    @Html.TextBoxFor(si => si.ConfirmPassword, new { @class = "form-control", @id = "txtConfirmPassword", @type = "password" })

    <input type="submit" class="btn btn-sm btn-primary btn-rounded" value="Signup" id="btnSignup" />
}

當使用Web api創建項目MVC時,將創建以下方法,我可以使用Ajax注冊。 但是我不能通過提交按鈕來做到這一點。 我不知道我必須對此做出什么改變

的AccountController

// POST api/Account/Register
[AllowAnonymous]
[Route("Register")]
public async Task<IHttpActionResult> Register(RegisterBindingModel model)
{
    if (!ModelState.IsValid)
    {
        return BadRequest(ModelState);
    }

    var user = new ApplicationUser() { UserName = model.Email, Email = model.Email };

    IdentityResult result = await UserManager.CreateAsync(user, model.Password);

    if (!result.Succeeded)
    {
        return GetErrorResult(result);
    }

    return Ok();
}

您可以像這樣在Html.BeginForm參數中進行更改,它在我這一方面工作得很好。

@using (Html.BeginForm("","api/Account/Register")) {
       @Html.TextBoxFor(si => si.Email, new { @class = "form-control", @id = "txtEmail" })
       @Html.TextBoxFor(si => si.Password, new { @class = "form-control", @id = "txtPassword", @type = "password" })
       @Html.TextBoxFor(si => si.ConfirmPassword, new { @class = "form-control", @id = "txtConfirmPassword", @type = "password" })

        <input type = "submit" class="btn btn-sm btn-primary btn-rounded" value="Signup" id="btnSignup" />
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM