You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

工单系统:自定义端口配置与CORS启用方案问询

工单系统端口修改与CORS启用解决方案

一、修改前后端自定义端口

1. ASP.NET Core Web API后端端口修改

三种常用配置方式:

  • 修改launchSettings.json(开发环境)
    找到项目根目录Properties/launchSettings.json,修改applicationUrl字段为自定义端口:
"profiles": {
  "YourApiProject": {
    "commandName": "Project",
    "dotnetRunMessages": true,
    "launchBrowser": true,
    "applicationUrl": "https://localhost:7089;http://localhost:5089",
    "environmentVariables": {
      "ASPNETCORE_ENVIRONMENT": "Development"
    }
  }
}
  • Program.cs硬编码(生产环境)
    在Program.cs中通过UseUrls指定端口:
var builder = WebApplication.CreateBuilder(args);
// 其他服务注册...
builder.WebHost.UseUrls("https://localhost:7089", "http://localhost:5089");
var app = builder.Build();
// 中间件配置...
app.Run();
  • 命令行启动指定端口
    启动时附加--urls参数:
dotnet run --urls "https://localhost:7089;http://localhost:5089"

2. WPF MVVM前端配置(后端地址适配)

WPF作为桌面客户端无服务端口,需修改API调用地址:

  • 添加appsettings.json配置文件存储后端地址:
{
  "ApiSettings": {
    "BaseUrl": "https://localhost:7089/api/"
  }
}
  • 在ViewModel中读取配置并调用API:
var config = new ConfigurationBuilder()
    .SetBasePath(AppDomain.CurrentDomain.BaseDirectory)
    .AddJsonFile("appsettings.json")
    .Build();
var baseUrl = config.GetSection("ApiSettings:BaseUrl").Value;

using var client = new HttpClient();
client.BaseAddress = new Uri(baseUrl);
var response = await client.GetAsync("tickets");

二、启用CORS跨域功能

ASP.NET Core Web API后端配置

  1. 注册CORS服务
    在Program.cs中添加CORS策略,按需配置允许的源、方法和头部:
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddCors(options =>
{
    options.AddPolicy("AllowWpfClient", policy =>
    {
        policy.WithOrigins("*") // 允许所有源(生产环境建议指定具体地址)
              .AllowAnyHeader()
              .AllowAnyMethod();
        // 如需允许凭证(如Cookie),添加 .AllowCredentials()
    });
});
builder.Services.AddControllers();
  1. 启用CORS中间件
    将CORS中间件放在UseRouting之后、UseAuthorization之前:
var app = builder.Build();
// 其他中间件...
app.UseRouting();
app.UseCors("AllowWpfClient");
app.UseAuthorization();
app.MapControllers();
app.Run();

WPF前端注意事项

  • 纯WPF客户端使用HttpClient调用API不受浏览器同源策略限制,但若后端CORS策略限制源,需确保请求来源被允许。
  • 若使用WebView控件加载网页并调用API,需将WebView的页面地址加入后端CORS允许的源列表。

内容的提问来源于stack exchange,提问作者DayInShiningArmor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.02 06:44:52