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

企业如何加强互联网网站建设百度网站域名

企业如何加强互联网网站建设,百度网站域名,百度网站管理员工具,泰安市建设局今天做前端页面渲染的时候遇到一个问题, 因为我使用的wsl开发,windows直接访问不了wsl中的文件,还要改其他配置没成功,索性就不改了,粘贴在桌面上用浏览器打开调试 然后所有使用apifox通过测试的路径全部报错 Ensure CORS response header values are validA cross-origin reso…

今天做前端页面渲染的时候遇到一个问题,

因为我使用的wsl开发,windows直接访问不了wsl中的文件,还要改其他配置没成功,索性就不改了,粘贴在桌面上用浏览器打开调试

然后所有使用apifox通过测试的路径全部报错

Ensure CORS response header values are valid
A cross-origin resource sharing (CORS) request was blocked because of invalid or missing response headers of the request or the associated preflight request .
To fix this issue, ensure the response to the CORS request and/or the associated preflight request are not missing headers and use valid header values.
Note that if an opaque response is sufficient, the request's mode can be set to no-cors to fetch the resource with CORS disabled; that way CORS headers are not required but the response content is inaccessible (opaque

这个错误主要是因为跨域访问导致的

什么是跨域访问

跨域访问报错的原理是浏览器的同源策略(Same-Origin Policy)。同源策略是一种安全策略,指浏览器允许在同一域名下的页面间相互访问,但禁止跨域名访问。

跨域访问的问题通常出现在客户端的 JavaScript 代码中,当 JavaScript 代码向另一个域名的服务器发起请求时,如果该域名与当前域名不同,则会触发跨域访问错误。因为浏览器出于安全考虑,不允许通过 XMLHttpRequest 或 Fetch API 发送跨域请求,除非响应中包含正确的跨域头信息(CORS)。

在服务器上的 HTML 文件也可能遇到跨域问题。比如,如果 HTML 文件中包含了从不同域名加载的资源,比如图片、CSS 或 JavaScript 文件,如果服务器未正确设置跨域头信息,那么这些资源的请求也可能会被浏览器拦截。

通常情况下,在服务器端设置正确的跨域头信息(CORS)可以解决跨域问题。同时,也可以使用 JSONP、代理、WebSocket 等技术绕过浏览器的同源策略。

简单来说就是我在我的桌面的html文件中有访问wsl的域名,然后两个域名不一样,就会触发保护机制,如果这时你的服务端没有添加跨域的许可(对我来说就是添加桌面的html可以访问路径的许可),就会找不到路径返回404

问题解决,

  1. 第一就是不要跨域,两个域名相同(localhost或者127.0.0.1什么的),安全一点

  2. 第二个方法就是,添加许可,对头部信息进行设置(请求与相应都要进行设置,不然要么请求不了,要么收不到相应)

  • 请求:

我们可以使用一个中间件函数来处理跨域的验证,因为如果跨域,浏览器要先发送一个请求方法为: OPTIONS的请求来判断,需要返回一个200才会发送剩下的请求,使用我们定义跨域访问许可中间件函数

// 允许跨域访问中间件
func Dfot() gee7.HandlerFunc {
 return func(ctx *gee7.Context) {
  // 处理预检请求
  if ctx.Req.Method == "OPTIONS" {
   // 验证预检请求的来源、头部字段和请求方法是否符合预期
   // ...

   // 设置响应头部字段
   ctx.Writer.Header().Set("Access-Control-Allow-Origin""*")
   ctx.Writer.Header().Set("Access-Control-Allow-Methods""POST, GET, OPTIONS")
   ctx.Writer.Header().Set("Access-Control-Allow-Headers""Content-Type")

   // 返回状态码 200 和空响应体
   ctx.Writer.WriteHeader(http.StatusOK)
   return
  }
 }
}

我这里ctx.Writer.Header().Set("Access-Control-Allow-Origin"使用的"*"表示所有跨域路径都可以访问,为了安全起见生产环境不建议这样用

  • 相应:

在相应的时候在setheader函数中添加允许跨域访问的路径(我这里嫌麻烦还是用的*)

func (c *Context) SetHeader(key string, value string) {
 c.Writer.Header().Set("Access-Control-Allow-Origin""*")
 c.Writer.Header().Set(key, value)
}

这样就解决跨域访问的的错误了

本文由 mdnice 多平台发布

http://www.tj-hxxt.cn/news/50756.html

相关文章:

  • 青岛做网站排名seo技术经理
  • 做福利网站违法吗个人域名注册流程
  • 长沙疫情高峰期seo行业岗位有哪些
  • 淘宝上成都网站建设千锋教育可靠吗
  • 湖南衡阳网站建设58网络推广
  • 知道网站是wp程序做的如何仿站兰州模板网站seo价格
  • 众筹网站怎么做推广方案浙江网站建设营销
  • 帮人做ppt的网站优量汇广告平台
  • 托管管理系统app优化建站seo门户
  • 网站服务器租用合同东莞百度搜索网站排名
  • 专门做调查问卷的网站苏州网站建设公司
  • 腾讯企业邮箱电脑版登录入口专业seo服务商
  • 如何不要钱做网站邵阳seo优化
  • 郑州做定制网站的公司抖音运营推广策划方案
  • 史先生 网站建设安徽搜索引擎优化
  • 阿里服务器怎么做网站服务器吗央视网新闻
  • 做网站简单需要什么软件优化防疫措施+科学精准防控
  • 建设商务网站需要哪些步骤缅甸最新新闻
  • 公司网站一定要备案吗做公司网站需要多少钱
  • 移动网站优化 sousuoyouhua.com论坛推广案例
  • 哪里有个人卖房网站福州seo按天收费
  • 荆州网站建设 众火网我们公司想做网络推广
  • 网站建设的作用有哪些绍兴seo排名外包
  • html5在网站建设中的网络营销策划方案ppt模板
  • 深圳疫情最新情况龙华区网站seo方案模板
  • 做网站需要注意的网店推广营销方案
  • 精美网站设计欣赏抖音seo什么意思
  • 重庆做网站_重庆网站建设_重庆网络推广_重庆网络公司免费建站哪个比较好
  • wordpress创建短代码seo能从搜索引擎中获得更多的
  • 模版网站可以做seo吗单页网站模板