webapi跨越问题

在这里插入图片描述
在这里插入图片描述

由于浏览器存在同源策略,为了防止 钓鱼问题,浏览器直接请求才不会有跨越的问题
浏览器要求JavaScript或Cookie只能访问同域下的内容
浏览器也是一个应用程序,有很多限制,不能访问和使用电脑信息(获取cpu、硬盘等),只能临时文件夹【cookie】
协议、域名、端口号 有一个不同就存在跨越问题了。
把不同业务数据存放到不同的服务,是为了分摊压力的。
同源策略:是浏览器最核心也最基本的安全功能,会约束浏览器的行为;
同源策略会限制浏览器:只允许本域内的脚本读写本域内的资源,不允许访问本域外的资源。

判断是否同源?
判断要素有三:协议、域名、端口号;
(三者全部一致才视为同源,即属于同一个域;否则视为非同源。)

jsonp 解决跨域问题 有局限性 ,只能使用Get请求。 利用 script 不受同源策略解决问题的
jsonp解决跨域问题

利用WebAPI 特性解决跨域问题
只要在范围的数据,header 添加
》》actionExecutedContext.Response.Headers.Add(“Access-Control-Allow-Origin”, “*”);
参考webapi特性
在这里插入图片描述
利用Microsoft.AspNet.WebApi.Cors
在这里插入图片描述

在这里插入图片描述

 //CORS
            //config.EnableCors(new EnableCorsAttribute("*", "*", "*", "*"));//全部放开,不限制

            //具体设定                                                  
            //EnableCorsAttribute attribute = new EnableCorsAttribute("http://localhost:52013", "*", "*");
            //attribute.Origins.Add("http://localhost:52003");
            //config.EnableCors(attribute);

相关推荐

  1. Flask开发webapi初步及过程问题探究

    2024-06-09 05:08:09       37 阅读
  2. spring 项目中如何处理跨越cors问题

    2024-06-09 05:08:09       61 阅读
  3. ASP.NET Core WebAPI_解决跨域问题(前端后端)

    2024-06-09 05:08:09       53 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-09 05:08:09       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-09 05:08:09       101 阅读
  3. 在Django里面运行非项目文件

    2024-06-09 05:08:09       82 阅读
  4. Python语言-面向对象

    2024-06-09 05:08:09       91 阅读

热门阅读

  1. v-model的工作原理是什么

    2024-06-09 05:08:09       28 阅读
  2. JFinal学习

    2024-06-09 05:08:09       32 阅读
  3. ts和js有什么不同

    2024-06-09 05:08:09       28 阅读
  4. C#-if判断语句

    2024-06-09 05:08:09       27 阅读