您的位置:首页 > 编程语言 > ASP

(转)asp.net mvc web api 可跨域方法

2015-10-12 12:28 651 查看
1.直接修改web.config,不过这是针对所有Action。

<locationpath="Sample.txt">
<system.webServer>
<httpProtocol>
<customHeaders>
<addname="Access-Control-Allow-Origin"value="*"/>
</customHeaders>
</httpProtocol>
</system.webServer>
</location>

方法2.
加入一个类别,内容为以下所示:

usingSystem;
usingSystem.Collections.Generic;
usingSystem.Linq;
usingSystem.Web;

usingSystem;
usingSystem.Web.Http.Filters;

namespaceWorkflow.Filters
{
publicclassAllowCrossSiteJsonAttribute:ActionFilterAttribute
{
publicoverridevoidOnActionExecuted(HttpActionExecutedContextactionExecutedContext)
{
if(actionExecutedContext.Response!=null)
actionExecutedContext.Response.Headers.Add("Access-Control-Allow-Origin","*");

base.OnActionExecuted(actionExecutedContext);
}
}
}

最后你在Controller或者是Action上面加上属性,即可允许跨网域传输数据:

[AllowCrossSiteJson]
publicclassInstancesController:ApiController
{
//......

}


                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: