跨域问题

问题显示:

 

1.什么是跨域:

 CORS跨来源资源共享是一份浏览器技术的规范,提供了web服务从不同域传来沙盒脚本的方法,以避开浏览器的同源策略,是JSONP模式的现代版。

什么又是CORS呢?   CORS是W3c工作草案,它定义了在跨域访问资源时浏览器和服务器之间如何通信。CORS背后的基本思路是使用自定义的HTTP头部允许浏览器和服务器相互了解对方,从而决定请求或响应成功与否。

2.为什么有跨域问题:

同源策略:是浏览器最核心最基本的安全功能;同源指的是:同协议,同域名和同端口 。 精髓: 认为自任何站点装载的信赖内容是不安全的。当被浏览器半信半疑的脚本运行在沙箱时,他们应该只被允许访问来自同一站点的资源,而不是那些来自其他站点可能怀有恶意的资源。

3.解决:

// Cors 
func Cors(ctx iris.Context) {
    ctx.Header("Access-Control-Allow-Origin", "*")
    if ctx.Request().Method == "OPTIONS" {
        ctx.Header("Access-Control-Allow-Methods", "GET,POST,PUT,DELETE,PATCH,OPTIONS")
        ctx.Header("Access-Control-Allow-Headers", "Content-Type, Accept, Authorization")
        ctx.StatusCode(204)
        return
    }
    ctx.Next()
}

然后在初始化iris的时候将该函数加进去

app := iris.New()
app.Use(Cors)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值