美文网首页
http头部字段Origin和Access-Control-Al

http头部字段Origin和Access-Control-Al

作者: 一颗冰淇淋 | 来源:发表于2022-12-10 18:21 被阅读0次

Http协议中请求头和响应头携带了很多信息,其中 请求头 Origin,响应头 Access-Control-Allow-Origin 与跨域有关。

为了验证跨域,要将客户端和服务端分配在不同端口,这里通过 nodejs 在8080端口起一个服务,用于响应客户端的请求

const http = require('http');
const server = http.createServer((req,res)=>{
    res.end('hello 8000~')
});
server.listen(8000,()=>{
    console.log('监听8000端口')
})

如果通过浏览器url上直接输入地址访问,响应 hello 8080~

1_8080端口起的服务.jpeg

客户端新建 html 页面,发送 get 请求向本地的 8080 端口

<script>
    const url = 'http://127.0.0.1:8000'
    fetch(url).then(res=>{
        console.log('请求结果',res)
    })
</script>

再通过5500端口打开页面,会发现请求发送失败,控制台报错【被跨域策略阻止了】

2_跨域.jpeg

通过查看请求信息可以发现,请求头部字段 Origin 标识着当前请求url

3_请求头origin.jpeg

同域下才可以发送异步请求,是浏览器的保护策略,在响应头告知浏览器哪些来源允许跨域,则可以不受浏览器的限制。

const server = http.createServer((req,res)=>{
    res.setHeader("Access-control-allow-origin","http://127.0.0.1:5500")
    res.end('hello 8000~')
});

再次发送get请求,就可以响应头上增加了Access-control-allow-origin属性,并且请求成功,返回200的状态码

4_响应成功.jpeg

相关文章

  • 6. HTTP头部

    6.1 HTTP报文头部 报文头部由几个字段构成 HTTP请求报文 由方法,URI,HTTP版本,HTTP头部字段...

  • HTTP 报头字段列表

    HTTP报头字段 是 HTTP中请求和响应消息的头部部分的组件。他们是定义HTTP事务的操作参数 头部字段在请求行...

  • HTTP 报头字段列表

    HTTP报头字段 是 HTTP中请求和响应消息的头部部分的组件。他们是定义HTTP事务的操作参数 头部字段在请求行...

  • 常见HTTP报文的头部域信息内容

    HTTP报文的头部域信息内容其实有很多,每个头部域字段的控制都具有自己的逻辑和判断机制,以下是常见的一些头部域字段...

  • HTTP 头字段 Origin、Host 和 Referer 有

    大家好,我是前端西瓜哥。 HTTP 请求头字段中的 Origin、Host 和 Referer 非常相似,乍一看都...

  • http协议头部字段Rerferer

    一、意义 原英文单词是rerferrfer,翻译是记录 二、在http中的header rerferrfer是ht...

  • 3. Apache - http协议及web工具

    4. http协议及报文头部结构 请求报文: 开始行: 方法, URL, 版本 首部字段: 字段名:值;比如: S...

  • cookie模块学习

    Cookie模块定义了一些类用来解析和创建HTTP cookie头部字段。 1.创建和设置Cookie Cooki...

  • HTTP请求头部Content-Type字段

    GET 请求GET 请求不存在请求实体部分,键值对参数放置在 URL 尾部,因此请求头不需要设置 Content-...

  • http请求中的Content-Type

    http头部字段Content-Type约定请求和响应的HTTP body内容编码类型,客户端和服务端根据http...

网友评论

      本文标题:http头部字段Origin和Access-Control-Al

      本文链接:https://www.haomeiwen.com/subject/lrrxqdtx.html