Unity webgl跨域问题 unity使用nginx设置跨域 ,修改请求头

跨域

什么是跨域

跨域是指浏览器因安全策略限制,阻止一个域下的网页访问另一个域下的资源。

一些常见的跨域情况:

  1. 协议不同
    从 http://example.com 请求 https://example.com。
  2. 域名不同
    从 http://example.com 请求 http://anotherdomain.com。
  3. 端口不同
    从 http://example.com:80 请求 http://example.com:8080。
  4. 子域不同
    从 http://sub.example.com 请求 http://another.example.com。
  5. 顶级域名不同
    从 http://example.com 请求 http://example.org。
    这些情况都会触发浏览器的同源策略,导致跨域问题。

为什么会有跨域

浏览器的安全机制,防止不同来源的恶意脚本窃取数据。

如何解决跨域

  1. CORS(跨域资源共享)
    通过服务器设置响应头,允许特定域的访问。
  2. JSONP
    通过

nginx配置

复制代码
    server {
        listen       7963;
        server_name  localhost;

 
         location / {
          root   html;
          index  index.html index.htm;

          # 添加 CORS 头部
          add_header Access-Control-Allow-Origin *;
          add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
          add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';

          # 处理预检请求
          if ($request_method = 'OPTIONS') {
              add_header Access-Control-Allow-Origin *;
              add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
              add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
              add_header Content-Length 0;
              add_header Content-Type text/plain;
              return 204;
          }
}

查看服务器是否支持跨域

如果服务不支持跨域,再怎么设置nginx的请求头都是不行的!
如果服务不支持跨域,再怎么设置nginx的请求头都是不行的!
如果服务不支持跨域,再怎么设置nginx的请求头都是不行的!

如何查看服务器是否支持跨域

以 https://cn.bing.com/?mkt=zh-CN 为例

打开之后按下F12 ,切换到网络,刷新网页

滑倒最上面,看响应头中是否有:Access-Control-Allow-Origin *

或者使用post man,找一下有没有:Access-Control-Allow-Origin *;, 有就是允许,没有就是不允许

很明显bing不允许。

允许的情况会:

相关推荐
Android系统攻城狮16 分钟前
Linux Gstreamer深度解析之gst_audio_sink_get_type调用流程与实战(六十五)
linux·运维·服务器·音视频·gstreamer音视频·音视频进阶·gstreamer音视频进阶
云贝贝贝2 小时前
PostgreSQL 分区表:从设计到运维,大表不再卡
运维·数据库·postgresql
fengkai45453 小时前
十二、Redis -1
运维·数据库·redis
甜到心里的蛋糕3 小时前
Playwright 无头浏览器自动发布 CSDN 图文草稿的实践(持久化 profile + 图床直传)
运维·python·playwright·爬虫自动化·博客运营
凌云若寒4 小时前
BarTender提示#807错误:无法在拥有其他许可证的Licensing Service上激活节点锁定的 Professional 版许可证 的解决办法
运维·服务器·前端·学习·软件需求
Julien20045 小时前
管理 Ansible 配置文件
linux·运维·服务器·ssh·学习方法
MicrosoftCloud5 小时前
性能排查 01|free 显示内存用了 90% 就是快满了吗?buff/cache 与 available 一次讲清
linux·运维·内存·free·buff/cache
灯澜忆梦5 小时前
【docker】#1 | Docker 初识
运维·docker·容器
风寄巴山秋5 小时前
OpenBMC:Web 页面功能异常排查
运维·服务器·前端·架构
小白的码BUG之路6 小时前
Jenkins -- 连接gitee
运维·gitee·jenkins