架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 23047|回复: 1

[资料] ASP.NET 允许跨域之 OPTIONS 请求

[复制链接]
发表于 2020-8-5 20:54:24 | 显示全部楼层 |阅读模式
浏览器从一个域名的网页去请求另一个域名的资源时,域名、端口、协议任一不同,都是跨域。

关于跨域的文章,我自己已经写过很多了,如下:

Spring Boot 允许跨域配置
https://www.itsvse.com/thread-5075-1-1.html
nginx跨域资源共享 CORS添加响应头
https://www.itsvse.com/thread-3377-1-1.html
CORS设置WebApi跨域问题
https://www.itsvse.com/thread-3858-1-1.html
还有关于什么是跨域的具体描述:

什么是跨域?跨域怎么解决?
https://www.itsvse.com/thread-3868-1-1.html
跨域资源共享标准新增了一组 HTTP 首部字段,允许服务器声明哪些源站通过浏览器有权限访问哪些资源。另外,规范要求,对那些可能对服务器数据产生副作用的 HTTP 请求方法(特别是 GET 以外的 HTTP 请求,或者搭配某些 MIME 类型的 POST 请求),浏览器必须首先使用 OPTIONS 方法发起一个预检请求(preflight request),从而获知服务端是否允许该跨域请求。服务器确认允许之后,才发起实际的 HTTP 请求。在预检请求的返回中,服务器端也可以通知客户端,是否需要携带身份凭证(包括 Cookies 和 HTTP 认证相关数据)。

HTTP访问控制(CORS)

https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Access_control_CORS

上周末,我在自己博客介绍页面,把文章标题以调用接口的形式返回给用户,由于是调用的其他二级域名,所以,存在跨域问题,接口是通过 POST 请求访问,一开始忘记设置 OPTIONS 请求了,所以报错如下:

QQ截图20200802214000.jpg

接口是 asp.net mvc 控制器写的,所以,只需要再添加一个 OPTIONS 请求,并允许跨域即可,代码如下:

access-control-allow-headers: *
access-control-allow-methods: GET, POST, PUT, DELETE
access-control-allow-origin: *
cache-control: private
content-length: 0
date: Wed, 05 Aug 2020 12:43:22 GMT
status: 200
QQ截图20200805205401.jpg

(完)




上一篇:SSIS 教程(七)SQL Server 2012 执行 SSIS 作业
下一篇:腾讯、和讯网、新浪、雪球、网易股票接口数据
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
发表于 2021-10-26 14:30:23 | 显示全部楼层
谢谢~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-4-27 07:54

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表