我是 web developemnt 的新手,我想知道是否有可能阻止直接访问控制器的方法。
假设我有这种方法:
public ActionResult Delete(int id)
{
//do some stuff here
}
基本上我可以通过浏览器、邮递员或其他任何东西的siteaddress/controllerName/Delete?id=1
访问它......
有没有办法使这种方法成为一种"私有"方法,只能从应用程序访问?
我正在使用表单标识(标识(。我也知道我可以使用自定义属性拒绝直接访问,但我不想要重定向。也许"反伪造令牌"是解决方案,但我不确定...
也许是非行动属性?
[NonAction]
public void Delete(int id)
{
//do some stuff here
}
这将使该方法无法通过 HTTP 访问,但可用于 C# 代码。如果这是你想要的。