我现在正在Linux上部署asp .net核心mvc应用程序,对我来说一件事很困惑。
因此,在主页Home/Index
上,我有一些按钮可以将商品添加到购物车,然后通过data-url
和@Url.Action
来完成,我在其中声明了控制器,操作和一些参数。
在Windows上,无论是本地环境还是远程服务器,一切正常,因此在Request Url
中,我可以看到以下情况:
http://domain/Cart/AddToCart?some_args
Request Method
是GET,Status Code
是302,在Response Header
中,我得到Location
进行下一步操作。
但是在Linux上,我每次都会得到正确的Request Url
:
http://domain/Home/Index
..并且没有采取任何措施。
我通过nginx尝试过,现在我正在Docker平台上尝试,但是效果是一样的-重定向url不起作用。
编辑:
添加了我的data-url
代码:
data-url="@Url.Action("AddToCart", "Cart", new {arg1 = value1, arg2 = value2, arg3 = value3} )"
和 AddToCart 操作:
public RedirectToActionResult AddToCart(arg1, arg2, arg3)
{
var product = get product from repo
if (product != null)
{
cart.AddItem(arg1, arg2, arg3);
}
return RedirectToAction("ActionAsync");
}