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

HTTPS部署的ASP.NET Core站点AJAX请求本地HTTP地址被转HTTPS如何解决

问题根因说明

本质是HTTPS站点的**混合内容策略(Mixed Content)**限制,主流浏览器默认会把HTTPS页面下发起的主动HTTP请求自动升级为HTTPS,部分场景还会因为站点配置了HSTS(HTTP严格传输安全)强制所有请求走HTTPS,才会出现你遇到的协议被强制转换的问题。

可行解决方案
  • 方案1:ASP.NET Core后端做请求代理(最推荐,无兼容性问题)
    无需修改浏览器配置、也无需改动局域网设备,在自己的ASP.NET Core服务内新增代理接口,前端页面请求自身站点的HTTPS接口,由后端服务转发请求到局域网HTTP设备,再把结果返回给前端即可。
    可借助ASP.NET Core自带的IHttpClientFactory实现,参考代码:

    [ApiController]
    [Route("proxy")]
    public class DeviceProxyController : ControllerBase
    {
        private readonly IHttpClientFactory _httpClientFactory;
        public DeviceProxyController(IHttpClientFactory httpClientFactory)
        {
            _httpClientFactory = httpClientFactory;
        }
    
        [HttpGet]
        public async Task<IActionResult> Forward([FromQuery] string devicePath)
        {
            var client = _httpClientFactory.CreateClient();
            // 拼接设备实际HTTP请求地址
            var targetUrl = $"http://192.168.1.30/{devicePath.TrimStart('/')}";
            var response = await client.GetAsync(targetUrl);
            var responseContent = await response.Content.ReadAsStringAsync();
            return Content(responseContent, response.Content.Headers.ContentType?.ToString() ?? "text/plain");
        }
    }
    

    前端直接请求/proxy?devicePath=hello-world即可,同时天然避开跨域问题。

  • 方案2:浏览器侧配置豁免(仅适合内部小范围使用场景)
    如果你的Web应用仅内部少量用户使用,可让用户手动修改浏览器配置,禁止浏览器对当前站点的HTTP请求做自动升级:
    以Chrome为例,访问chrome://settings/content/insecureContent,在「允许向不安全网站发送请求」列表中添加你的HTTPS站点域名即可生效。

  • 方案3:给局域网设备加HTTPS反向代理
    在设备所在局域网内部署Nginx做反向代理,给代理服务配置自签名证书或者你站点域名的子域名证书,前端直接请求该代理的HTTPS地址,由Nginx转发到设备的HTTP接口即可。

  • 方案4:修改站点响应头禁用自动升级(仅对未开启HSTS的站点生效)
    在ASP.NET Core的响应头中添加Upgrade-Insecure-Requests: 0,通知浏览器不要自动升级当前页面发起的HTTP请求。如果你的站点已经开启了HSTS,需要先清除浏览器的HSTS缓存才会生效。
    配置参考(Program.cs中添加):

    app.Use(async (context, next) =>
    {
        context.Response.Headers["Upgrade-Insecure-Requests"] = "0";
        await next();
    });
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 08:54:05