c# - 将 MVC 应用程序部署到 Azure 应用程序服务时出现 POSTS 问题
问题描述
我有一个完整的 Web 应用程序,可以在 localhost 上完美运行。每个端点都被正确命中并顺利关闭。但是,当我将此 Web 应用程序发布到 Azure 应用程序服务时,没有任何 POST 调用被命中。当我观察网络选项卡内部发生的事情时,我看到了 404。这似乎只发生在 POST 而不是 GET 上。GET 似乎工作正常。
此外,请注意我正在使用 Razor 页面处理程序来触发操作,这可能很重要。如您所见,我有一个 Razor 页面处理程序asp-page-handler="Login"
,它应该在调用的代码中触发一个动作OnPostLogin
。
CSHTML:
<form class="text-center p-5" method="post">
<h5>UserName</h5>
<div asp-validation-summary="All" class="error-message"></div>
<input type="text" id="defaultLoginFormEmail" class="form-control mb-4" placeholder="UserName" asp-for="@Model.UserName">
<h5>Password</h5>
<input type="password" id="defaultLoginFormPassword" class="form-control mb-4" placeholder="Password" asp-for="@Model.Password">
<button class="btn btn-block my-4" type="submit" asp-page-handler="Login">Sign in</button>
</form>
这是此 Razor 页面的方法背后的代码:
public async Task<IActionResult> OnPostLogin()
{
var result = await _signInManager.PasswordSignInAsync(Input.UserName, Input.Password, false, false);
// if successful login
else if (result.Succeeded)
Response.Redirect(Request.Path.ToString());
// if unsuccessful
else return RedirectToPage("/Account/LoginError");
return Page();
}
当我单击登录按钮时,它甚至没有被击中。请记住,这不仅仅是此特定 POST 的问题。这是所有 POSTS 的问题(仅在 azure 应用程序服务上,不在 localhost 上)。
预先感谢您愿意提供帮助!
解决方案
推荐阅读
- ios - 线程 1:致命错误:当我尝试使用 NSuserDefaults 保存对象时,在展开可选值时意外发现 nil
- python - 如何使用@classmethod 从内部方法实例化一个类?[例如 pd.MultiIndex.from_tuples()]
- html - 在 pkgdown index.html 中添加版权所有者或资助者的徽标
- gnu - 有没有办法调试 GNU Parallel?
- google-chrome - Chrome 扩展程序:在后台脚本中打印所有 cookie
- javascript - 如何初始化javascript插件?
- android - 调用 session.setRepeatingRequest(captureRequestBuilder.build(), null, backgroundHandler) 时 Camera2 API 出错
- javascript - 无法使用 chrome 扩展在 DOM 中为 youtube 添加按钮元素
- json - 从 Json 中提取
- active-directory - 如何将 DevOps 帐户从 Microsoft 帐户移动到 Office 365 公司帐户?