当前位置: 首页 > news >正文

Asp.net WebAPI 中使用一般处理程序处理跨域问题

项目中,使用一般处理程序esri proxy.ashx进行请求转发,获取GIS资源。项目中,使用Authorization请求头进行权限控制。因此,在esri进行请求转发时,报跨域错误。

1.代理转发的请求,未进入ProcessRequest()方法即报跨域错误。问AI,AI给的意见为:

当浏览器发送 OPTIONS请求时,IIS 或 ASP.NET 可能 ​​未正确路由到你的 IHttpHandler​,导致:

  • OPTIONS请求被 IIS 拦截​​(未交给你的代码处理)

  • web.config缺少对 OPTIONS方法的支持​

  • ​Handler 未正确注册​

AI给的解决方案为在web.config中增加如下配置:

<system.webServer><handlers><add name="ProxyHandler" path="proxy.ashx" verb="GET,POST,PUT,DELETE,OPTIONS" type="GRSH.KSWERegister.Web.proxy, GRSH.KSWERegister.Web" resourceType="Unspecified" /></handlers><modules runAllManagedModulesForAllRequests="true" /><httpProtocol><customHeaders><!-- 可选:全局 CORS 设置 --><add name="Access-Control-Allow-Origin" value="*" /><add name="Access-Control-Allow-Methods" value="GET,POST,PUT,DELETE,OPTIONS" /><add name="Access-Control-Allow-Headers" value="Content-Type, Authorization" /></customHeaders></httpProtocol>
</system.webServer>

2.一般处理程序中,增加如下代码:

if (context.Request.HttpMethod == "OPTIONS")
{context.Response.StatusCode = 200;context.Response.End();return;
}

经过如此配置,即可实现proxy.ashx支持Authorization请求头

http://www.dtcms.com/a/487543.html

相关文章:

  • Python的插件机制
  • 对接印度股票指数API完整指南:从入门到实战
  • 差分操作正确性证明
  • 广西建设厅网证件查询郑州seo外包平台
  • 做个支付网站多少钱南通注册公司
  • 免费网站推广优化建设网站 法律责任
  • SpringAI 本地调用 Ollama
  • python 视频播放网站开发wordpress 预订插件
  • 公司网站维护重庆平台
  • 第5篇:自定义序列化器与反序列化器:突破默认逻辑
  • NSSCTF 理想国
  • 极速迁移:GitLab项目无缝转移实战手册
  • 视频解析转换耗时—OpenCV优化摸索路
  • 自己电脑做网站谁有网站推荐一下好
  • 组织架构树形选择组件使用说明(Vue3 + UniApp)
  • 响应式网站开发步骤去哪里学习建设网站
  • 网站建设与管理用什么软件有哪些内容南京外包公司
  • 电子商务网站规划的原则江苏省城乡建设网站
  • 项目学习总结:CAN总线、摄像头、STM32概述
  • Linux中在字符串中查找指定字符的第一次出现位置的汇编实现
  • 官方网站撰写策划书分布式移动网站开发技术
  • OpenPI源码分析
  • 智能化早诊:深度学习如何改变阿尔茨海默病的诊断未来
  • 把 AI“折”进纸里:基于折纸超材料的生成式电磁隐身设计,0.1mm 厚度实现 8-18GHz 全波段低可探测
  • 现在网站建设用什么语言开网店怎么找货源一件代发
  • 智能硬件使用小聆AI自定义MCP应用开发操作讲解
  • 一流的五屏网站建设企业网站建设 论文
  • 03、51 单片机介绍
  • PHP+MySQL开发实战:从数据库操作到SQL注入漏洞原理解析
  • 【MySQL】管理