码迷,mamicode.com
首页 > 其他好文 > 详细

ServiceStack支持跨域提交

时间:2016-01-04 19:50:25      阅读:620      评论:0      收藏:0      [点我收藏+]

标签:

//ServiceStack对浏览器有一定的限制

//修改AppHost.cs文件

using Funq;
using ServiceStack;
using ServiceStackTest.ServiceInterface;


namespace ServiceStackTest
{
public class AppHost : AppHostBase
{
/// <summary>
/// Default constructor.
/// Base constructor requires a name and assembly to locate web service classes.
/// </summary>
public AppHost()
: base("ServiceStackTest", typeof(MyServices).Assembly)
{

}

/// <summary>
/// Application specific configuration
/// This method should initialize any IoC resources utilized by your web service classes.
/// </summary>
/// <param name="container"></param>
public override void Configure(Container container)
{
//Config examples
//this.Plugins.Add(new PostmanFeature());

//支持跨域 方式1
this.Plugins.Add(new CorsFeature());
//相当于使用了默认配置
//CorsFeature(allowedOrigins: "*",allowedMethods: "GET, POST, PUT, DELETE, OPTIONS",allowedHeaders: "Content-Type",allowCredentials: false);
//如果仅仅允许GET和POST的请求支持CORS,则只需要改为:
//Plugins.Add(new CorsFeature(allowedMethods: "GET, POST"));

//对应JsonP 跨域提交 方式2
//this.GlobalResponseFilters.Add((req, res, dto) =>
//{
// var func = req.QueryString.Get("callback");
// if (!func.IsNullOrEmpty())
// {
// res.AddHeader("Content-Type", "text/html");
// res.Write("<script type=‘text/javascript‘>{0}({1});</script>".FormatWith(func, dto.ToJson()));
// res.Close();
// }
//});

//支持跨域 方式3
base.SetConfig(new HostConfig()
{
GlobalResponseHeaders =
{
{ "Access-Control-Allow-Origin", "*" },
{ "Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS" },
{ "Access-Control-Allow-Headers", "Content-Type" },
},
});
}
}
}

ServiceStack支持跨域提交

标签:

原文地址:http://www.cnblogs.com/xsj1989/p/5099943.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!