Mik*_*ole 5 c# asp.net-web-api
我的WebAPI 2应用程序中有一些操作方法,我想禁用远程可访问性(计划的管理任务).其他行动方法应公开.ActionFilter在这种情况下,这是最好的选择吗?
Rre*_*Cat 10
我认为如果您的网站有本地网址,跨域资源共享(CORS)将对您有所帮助.您可以为您的安全行动应用公共行动的起源列表和仅本地起源.例如:
本地:
[EnableCors(Origins = new[] { "http://localhost", "http://sample.com" })]
public class ValuesController : ApiController
{
......
}
Run Code Online (Sandbox Code Playgroud)
和安全的:
[EnableCors(origins: "http://localhost")]
public class ValuesController : ApiController
{
......
}
Run Code Online (Sandbox Code Playgroud)
您可以通过下一个链接找到更多详细信息:ASP.NET Web API的CORS支持和[EnableCors]的范围规则
从书"Pro ASP.NET MVC 4第4版":
public class CustomActionAttribute : FilterAttribute, IActionFilter {
public void OnActionExecuting(ActionExecutingContext filterContext) {
if (filterContext.HttpContext.Request.IsLocal) {
filterContext.Result = new HttpNotFoundResult();
}
}
public void OnActionExecuted(ActionExecutedContext filterContext) {
// not yet implemented
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3917 次 |
| 最近记录: |