//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" },
},
});
}
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】