• 自动秒收录
  • 软件:1973
  • 资讯:56215|
  • 收录网站:181187|

IT精英团

前端面试必须解决网络中的跨域问题

前端面试必须解决网络中的跨域问题

浏览次数:
评论次数:
编辑: 乐咏
信息来源: ITPUB
更新日期: 2022-05-20 21:39:29
摘要

什么是跨域浏览器有一个重要的安全策略,称之为「同源策略」其中,源=协议+主机+端口源=协议+主机+端口源=协议+主机+端口,两个源相同,称之为同源,两个源不同,称之为跨源或跨域比如:源1源2是否同

  • 正文开始
  • 相关阅读
  • 推荐作品

什么是跨域

浏览器有一个重要的安全策略,称为“同源策略”

其中源=协议主机端口源=协议主机端口源=协议主机端口,两个源相同,称之为同源,两个源不同,称之为跨源或跨域

例如:

来源1

来源2

同源?

www.baidu.com[1]

www.baidu.com/news[2]

www.baidu.com[3]

www.baidu.com[4]

http://本地主机:5000

http://localhost:7000

http://localhost:5000

http://127.0.0.1:5000[8]

www.baidu.com[9]

百度网[10]

同源策略是指,若页面的源和页面运行过程中加载的源不一致时,出于安全考虑,浏览器会对跨域的资源访问进行一些限制

Image-20210916104747296同源策略是对ajax跨域最严厉的限制。默认情况下,它不允许ajax访问跨域资源。

Image-20210916105741041因此,我们通常所说的跨域问题就是同源策略对ajax的影响。

解决跨域问题的方法有很多。常见的有:

代理,常用

CORS,常用

JSONP

不管是哪种方式,都要让浏览器知道我的跨域请求是自己人的,不要拦截。

跨域解决方法1-代理

对于前端开发而言,大多数跨领域的问题都是通过代理来解决的。

代理适用的场景是:生产环境不发生跨域,但开发环境发生跨域

因此,只需要使用代理来解决开发环境中的跨域问题,也称为开发代理。

tps://image.z.itpub.net/zitpub.net/JPG/2022-05-20/AF8F5F72A8ADC6FA92976B4ED4C70BBB.jpg" width="1302" src="https://image.z.itpub.net/zitpub.net/JPG/2022-05-20/AF8F5F72A8ADC6FA92976B4ED4C70BBB.jpg">
image-20210916125008693

在实际开发中,只需要对开发服务器稍加配置即可完成

// vue 的开发服务器代理配置
// vue.config.js
module.exports = {
  devServer: { // 配置开发服务器
    proxy: { // 配置代理
      "/api": { // 若请求路径以 /api 开头
        target: "http://dev.taobao.com", // 将其转发到 http://dev.taobao.com
      },
    },
  },
};
复制代码

跨域解决方法2-JSONP

在CORS出现之前,人们想了一种奇妙的办法来实现跨域,这就是JSONP。

要实现JSONP,需要浏览器和服务器来一个天衣无缝的绝妙配合。

JSONP的做法是:当需要跨域请求时,不使用AJAX,转而生成一个script元素去请求服务器,由于浏览器并不阻止script元素的请求,这样请求可以到达服务器。服务器拿到请求后,响应一段JS代码,这段代码实际上是一个函数调用,调用的是客户端预先生成好的函数,并把浏览器需要的数据作为参数传递到函数中,从而间接的把数据传递给客户端

image-20210916151516184

JSONP有着明显的缺点,即其只能支持GET请求

跨域解决方法3-CORS

概述

CORS是基于http1.1的一种跨域解决方案,它的全称是Cross-Origin Resource Sharing,跨域资源共享。

它的总体思路是:如果浏览器要跨域访问服务器的资源,需要获得服务器的允许

image-20200421152122793

而要知道,一个请求可以附带很多信息,从而会对服务器造成不同程度的影响

比如有的请求只是获取一些新闻,有的请求会改动服务器的数据

针对不同的请求,CORS 规定了三种不同的交互模式,分别是:

  • 简单请求
  • 需要预检的请求
  • 附带身份凭证的请求

这三种模式从上到下层层递进,请求可以做的事越来越多,要求也越来越严格。

下面分别说明三种请求模式的具体规范。

简单请求

当浏览器端运行了一段 ajax 代码(无论是使用 XMLHttpRequest 还是 fetch api),浏览器会首先判断它属于哪一种请求模式

简单请求的判定

当请求同时满足以下条件时,浏览器会认为它是一个简单请求:

  1. 请求方法属于下面的一种:
  • get
  • post
  • head
  • 请求头仅包含安全的字段,常见的安全字段如下:
    • Accept
    • Accept-Language
    • Content-Language
    • Content-Type
    • DPR
    • Downlink
    • Save-Data
    • Viewport-Width
    • Width
  • 请求头如果包含Content-Type,仅限下面的值之一:
    • text/plain
    • multipart/form-data
    • application/x-www-form-urlencoded

    如果以上三个条件同时满足,浏览器判定为简单请求。

    下面是一些例子:

    // 简单请求
    fetch('http://crossdomain.com/api/news');

    // 请求方法不满足要求,不是简单请求
    fetch('http://crossdomain.com/api/news', {
      method: 'PUT',
    });

    // 加入了额外的请求头,不是简单请求
    fetch('http://crossdomain.com/api/news', {
      headers: {
        a: 1,
      },
    });

    // 简单请求
    fetch('http://crossdomain.com/api/news', {
      method: 'post',
    });

    // content-type不满足要求,不是简单请求
    fetch('http://crossdomain.com/api/news', {
      method: 'post',
      headers: {
        'content-type': 'application/json',
      },
    });
    复制代码

    简单请求的交互规范

    当浏览器判定某个ajax 跨域请求简单请求时,会发生以下的事情

    1. 请求头中会自动添加Origin字段

    比如,在页面http://my.com/index.html中有以下代码造成了跨域

    // 简单请求
    fetch('http://crossdomain.com/api/news');
    复制代码

    请求发出后,请求头会是下面的格式:

    GET /api/news/ HTTP/1.1
    Host: crossdomain.com
    Connection: keep-alive
    ...
    Referer: http://my.com/index.html
    Origin: http://my.com
    复制代码

    看到最后一行没,Origin字段会告诉服务器,是哪个源地址在跨域请求

    1. 服务器响应头中应包含Access-Control-Allow-Origin

    当服务器收到请求后,如果允许该请求跨域访问,需要在响应头中添加Access-Control-Allow-Origin字段

    该字段的值可以是:

    • *:表示我很开放,什么人我都允许访问
    • 具体的源:比如http://my.com,表示我就允许你访问

    实际上,这两个值对于客户端http://my.com而言,都一样,因为客户端才不会管其他源服务器允不允许,就关心自己是否被允许

    当然,服务器也可以维护一个可被允许的源列表,如果请求的Origin命中该列表,才响应*或具体的源

    为了避免后续的麻烦,强烈推荐响应具体的源

    假设服务器做出了以下的响应:

    HTTP/1.1 200 OK
    Date: Tue, 21 Apr 2020 08:03:35 GMT
    ...
    Access-Control-Allow-Origin: http://my.com
    ...

    消息体中的数据
    复制代码

    当浏览器看到服务器允许自己访问后,高兴的像一个两百斤的孩子,于是,它就把响应顺利的交给 js,以完成后续的操作

    下图简述了整个交互过程

    image-20200421162846480

    需要预检的请求

    简单的请求对服务器的威胁不大,所以允许使用上述的简单交互即可完成。

    但是,如果浏览器不认为这是一种简单请求,就会按照下面的流程进行:

    1. 浏览器发送预检请求,询问服务器是否允许
    2. 服务器允许
    3. 浏览器发送真实请求
    4. 服务器完成真实的响应

    比如,在页面http://my.com/index.html中有以下代码造成了跨域

    // 需要预检的请求
    fetch('http://crossdomain.com/api/user', {
      method: 'POST', // post 请求
      headers: {
        // 设置请求头
        a: 1,
        b: 2,
        'content-type': 'application/json',
      },
      body: JSON.stringify({ name: '袁小进', age: 18 }), // 设置请求体
    });
    复制代码

    浏览器发现它不是一个简单请求,则会按照下面的流程与服务器交互

    1. **浏览器发送预检请求,询问服务器是否允许**
    OPTIONS /api/user HTTP/1.1
    Host: crossdomain.com
    ...
    Origin: http://my.com
    Access-Control-Request-Method: POST
    Access-Control-Request-Headers: a, b, content-type
    复制代码

    可以看出,这并非我们想要发出的真实请求,请求中不包含我们的请求头,也没有消息体。

    这是一个预检请求,它的目的是询问服务器,是否允许后续的真实请求。

    预检请求没有请求体,它包含了后续真实请求要做的事情

    预检请求有以下特征:

    • 请求方法为OPTIONS
    • 没有请求体
    • 请求头中包含
      • Origin:请求的源,和简单请求的含义一致
      • Access-Control-Request-Method:后续的真实请求将使用的请求方法
      • Access-Control-Request-Headers:后续的真实请求会改动的请求头
    1. 服务器允许

    服务器收到预检请求后,可以检查预检请求中包含的信息,如果允许这样的请求,需要响应下面的消息格式

    HTTP/1.1 200 OK
    Date: Tue, 21 Apr 2020 08:03:35 GMT
    ...
    Access-Control-Allow-Origin: http://my.com
    Access-Control-Allow-Methods: POST
    Access-Control-Allow-Headers: a, b, content-type
    Access-Control-Max-Age: 86400
    ...
    复制代码

    对于预检请求,不需要响应任何的消息体,只需要在响应头中添加:

    • Access-Control-Allow-Origin:和简单请求一样,表示允许的源
    • Access-Control-Allow-Methods:表示允许的后续真实的请求方法
    • Access-Control-Allow-Headers:表示允许改动的请求头
    • Access-Control-Max-Age:告诉浏览器,多少秒内,对于同样的请求源、方法、头,都不需要再发送预检请求了
    1. 浏览器发送真实请求

    预检被服务器允许后,浏览器就会发送真实请求了,上面的代码会发生下面的请求数据

    POST /api/user HTTP/1.1
    Host: crossdomain.com
    Connection: keep-alive
    ...
    Referer: http://my.com/index.html
    Origin: http://my.com

    {"name": "xiaoming", "age": 18 }
    复制代码
    1. **服务器响应真实请求**
    HTTP/1.1 200 OK
    Date: Tue, 21 Apr 2020 08:03:35 GMT
    ...
    Access-Control-Allow-Origin: http://my.com
    ...

    添加用户成功
    复制代码

    可以看出,当完成预检之后,后续的处理与简单请求相同

    下图简述了整个交互过程

    image-20200421165913320

    附带身份凭证的请求

    默认情况下,ajax 的跨域请求并不会附带 cookie,这样一来,某些需要权限的操作就无法进行

    不过可以通过简单的配置就可以实现附带 cookie

    // xhr
    var xhr = new XMLHttpRequest();
    xhr.withCredentials = true;

    // fetch api
    fetch(url, {
      credentials: 'include',
    });
    复制代码

    这样一来,该跨域的 ajax 请求就是一个_附带身份凭证的请求_

    当一个请求需要附带 cookie 时,无论它是简单请求,还是预检请求,都会在请求头中添加cookie字段

    而服务器响应时,需要明确告知客户端:服务器允许这样的凭据

    告知的方式也非常的简单,只需要在响应头中添加:Access-Control-Allow-Credentials: true即可

    对于一个附带身份凭证的请求,若服务器没有明确告知,浏览器仍然视为跨域被拒绝。

    另外要特别注意的是:**对于附带身份凭证的请求,服务器不得设置 Access-Control-Allow-Origin 的值为***。这就是为什么不推荐使用*的原因

    一个额外的补充

    在跨域访问时,JS 只能拿到一些最基本的响应头,如:Cache-Control、Content-Language、Content-Type、Expires、Last-Modified、Pragma,如果要访问其他头,则需要服务器设置本响应头。

    Access-Control-Expose-Headers头让服务器把允许浏览器访问的头放入白名单,例如:

    Access-Control-Expose-Headers: authorization, a, b
    复制代码

    这样 JS 就能够访问指定的响应头了。


    关于本文

    如何在Bash脚本中使用强大的Linux测试命令
    « 上一篇 2022-05-20
    胡迪核心知识点详解(好文章合集)
    下一篇 » 2022-05-20
    • 胡迪核心知识点详解(好文章合集)
      1阅读 0条评论 个赞
      以下文章来源于公众号-3分钟秒懂大数据,作者在IT中穿梭旅行在Flink实时流中,经常会通过FlinkCDC插件读取Mysql数据,然后写入Hudi中。所以在执行上述操作时,需要了解……
    • 如何在Bash脚本中使用强大的Linux测试命令
      0阅读 0条评论 个赞
      Linuxtest命令是Shell内置命令,用来检测某个条件是否成立。test通常和if语句一起使用,并且大部分if语句都依赖test。可以将一个元素与另一个元素进行比较,但它更常……
    • 真正的建筑设计是什么样子的?
      1阅读 0条评论 个赞
      什么是架构和架构本质在软件行业,对于什么是架构,都有很多的争论,每个人都有自己的理解。此君说的架构和彼君理解的架构未必是一回事。因此我们在讨论架构之前,我们先讨论架构的概念定义,概念是人认识这个世界的……
    • 10分钟了解云原生 值得收藏~
      0阅读 0条评论 个赞
      文章转载:奇妙的Linux世界我们已经进入云计算下半场,不再像上半场在纠结要不要上云,而是讨论怎么上云?才能把云计算的价值发挥到淋漓尽致。如何把云计算与不同的业务场景深度结合?如何让技术真正作用于企业……
    • 你可能不知道PostgreSQL能做的8件有趣的事!
      0阅读 0条评论 个赞
      1整行引用您是否尝试过运行以下语句?SELECTmy_tableFROMmy_table;这可能看起来很奇怪,但它所做的是将所有列作为行类型返回到单个列中。现在你为什么要这样做?好吧,您很可……
    发表评论 共有条评论
    用户名: 密码:
    验证码: 匿名发表
    • Linux最常用的命令:解决95%以上的问题
      1阅读 0条评论 个赞
      Linux是目前应用最广泛的服务器操作系统,基于Unix,开源免费,由于系统的稳定性和安全性,市场占有率很高,几乎成为程序代码运行的最佳系统环境。linux不仅可以长时间的运行我们编写的程序代码,还可……
    • Spring云应用的优雅下线和灰度发布
      2阅读 0条评论 个赞
      前言在生产环境中,如何保证在服务升级的时候,不影响用户的体验,这个是一个非常重要的问题。如果在我们升级服务的时候,会造成一段时间内的服务不可用,这就是不够优雅的。那什么是优雅的呢?主要就是指在服务升级……
    • 你见过的最全面的Python关键知识总结
      1阅读 0条评论 个赞
      这是一份来自于SegmentFault上的开发者@二十一总结的Python重点。由于总结了太多的东西,所以篇幅有点长,这也是作者"缝缝补补"总结了好久的东西,强烈建议收藏再慢慢看~Py2……
    • 脸书数据库项目负责人:我从做基础设施中学到的42件事
      2阅读 0条评论 个赞
      最近读到了分布式系统研究者MaheshBalakrishnan的一篇博客《42thingsIlearnedfrombuildingaproductiondatabase》。同样做……
    • MYSQL如果索引优化仅仅是添加索引 太年轻而不简单
      1阅读 0条评论 个赞
      MYSQL的索引优化,如果此时此刻看到索引的优化,仅仅想到添加适合的索引,是不完全的,索引的优化本身就具有很多的不确定性。1索引会随着时间的推移,有性能的衰减2索引会随着数据量的增加,有性能的衰……
    • 如何执行超过100M的SQL脚本?
      2阅读 0条评论 个赞
      技术_菜鸟https://www.cnblogs.com/hai-ping/p/3939150.html最近遇到一个问题,在SQLServer的查询分析器里面执行一个超过100MB的数据库脚本,发现……
    • MySQL批量插入数据 一次插入多少行数据效率最高?
      7阅读 0条评论 个赞
      一、前言我们在操作大型数据表或者日志文件的时候经常会需要写入数据到数据库,那么最合适的方案就是数据库的批量插入。只是我们在执行批量操作的时候,一次插入多少数据才合适呢?假如需要插入的数据有百万条,那……
    • 前端面试必须解决网络中的跨域问题
      0阅读 0条评论 个赞
      什么是跨域浏览器有一个重要的安全策略,称之为「同源策略」其中,源=协议+主机+端口源=协议+主机+端口源=协议+主机+端口,两个源相同,称之为同源,两个源不同,称之为跨源或跨域比如:源1源2是否同……
    • MYSQL VS POLARDB唯一索引死锁及应用设计
      1阅读 0条评论 个赞
      #issue68021MySQLuniquecheck问题-知乎(zhihu.com)事情的开始是这样的,最近和阿里云密切联系,也成为他们的大客户,(我们当然是大客户,BIGBIG……
    • 胡迪核心知识点详解(好文章合集)
      1阅读 0条评论 个赞
      以下文章来源于公众号-3分钟秒懂大数据,作者在IT中穿梭旅行在Flink实时流中,经常会通过FlinkCDC插件读取Mysql数据,然后写入Hudi中。所以在执行上述操作时,需要了解……
    • 如何在Bash脚本中使用强大的Linux测试命令
      0阅读 0条评论 个赞
      Linuxtest命令是Shell内置命令,用来检测某个条件是否成立。test通常和if语句一起使用,并且大部分if语句都依赖test。可以将一个元素与另一个元素进行比较,但它更常……
    • 透彻理解数据资产、数据资源、数据管理、数据治理等概念的区别
      1阅读 0条评论 个赞
      以下文章来源于公众号-大鱼的数据人生,作者讨厌的大鱼先生数据成为生产要素后,各种跟数据相关的概念就出来了,其实很多概念没有权威定义,大家各有各的理解,这导致了理解上的歧义。数据管理、数据治理、数据资源……
    • MySQL查询语句的准备阶段是什么?
      1阅读 0条评论 个赞
      以下文章来源于公众号--一树一溪,作者一树一溪这一篇主要讲的内容是一条简单查询语句,在查询准备阶段会干哪些事情?分3个部分:打开表select*替换为表字段填充where条件示例表及SQ……
    • 基础巩固——至少需要多少行代码才能实现深度复制?
      1阅读 0条评论 个赞
      前言深度克隆(深拷贝)一直都是初、中级前端面试中经常被问到的题目,网上介绍的实现方式也都各有千秋,大体可以概括为三种方式:JSON.stringify+JSON.parse,这个很好理解;全量判断类……
    • 内存数据库如何利用内存?
      1阅读 0条评论 个赞
      与以磁盘存储为主的普通数据库相比,内存数据库的数据访问速度可以高出几个数量级,能大幅提高运算性能,更适合高并发、低延时的业务场景。不过,当前大部分内存数据库仍然采用SQL模型,而SQL缺乏一些……
    • 你可能不知道PostgreSQL能做的8件有趣的事!
      0阅读 0条评论 个赞
      1整行引用您是否尝试过运行以下语句?SELECTmy_tableFROMmy_table;这可能看起来很奇怪,但它所做的是将所有列作为行类型返回到单个列中。现在你为什么要这样做?好吧,您很可……
    • 不容错过的20个ES6技巧
      5阅读 0条评论 个赞
      前言大家好,我是xieyezi,好久不见,我又重新回归掘金啦,这次为大家整理了20个使用频率很高的ES6代码块,希望大家喜欢……
    • 用Ansible实现MySQL的备份、操作和维护
      0阅读 0条评论 个赞
      作者简介曹杰,中国结算上海分公司高级经理,从事系统运维管理工作。本文以容器形式部署了开源自动化运维工具Ansible,基于自带的MySQL管理模块编排了playbook配置文件,最终实现M……
    • 真正的建筑设计是什么样子的?
      1阅读 0条评论 个赞
      什么是架构和架构本质在软件行业,对于什么是架构,都有很多的争论,每个人都有自己的理解。此君说的架构和彼君理解的架构未必是一回事。因此我们在讨论架构之前,我们先讨论架构的概念定义,概念是人认识这个世界的……
    • 阿帕奇建筑师遵循的30条设计原则
      0阅读 0条评论 个赞
      作者介绍Srinath,科学家,软件架构师。ApacheAxis2项目的联合创始人,ApacheSoftware基金会的成员,WSO2流处理器(wso2.com/analytics)的联席架构师。……
    • 18家民营银行的生存状态:有的年薪百万 有的净利润暴跌
      10阅读 0条评论 个赞
      “头部效应”显著,亮眼业绩难掩背后困境。……
    • 实际年利率远超承诺 收取2.3%服务费 “网银”离不开贷款中介?
      1阅读 0条评论 个赞
      近日,1818黄金眼报道,周老板在杭州开设备厂。一个多月前,她接到一个电话,对方问她有没有融资需求。周老板说,当时还真的有这个需求,双方一拍即合。现在,她觉得自己过于轻信对方了,因为还款时发现年化利率是16.2%,当初说的是5%到5.3%。……
    • 官方证实洪涛与张庭公司有牵连 调查显示Xu zhēng有10家关联企业
      1阅读 0条评论 个赞
      今日有网友发博称,徐峥是TST庭秘密的老板、形象大使,目前徐峥方还未有回应。企查查显示,徐峥目前关联公司共有10家,公司主要集中在广播、电视、电影和录音制作业等行业,包括北京真乐道文化传播有限公司、北京七剑文化传媒有限公司、上海徐峥影视文化工作室。此外,徐峥的合作伙伴不包括张庭夫妇。……
    • SQL优化通用公式:5个步骤和10个案例
      1阅读 0条评论 个赞
      导读:在应用开发的早期,数据量少,开发人员开发功能时更重视功能上的实现,随着生产数据的增长,很多SQL语句开始暴露出性能问题,对生产的影响也越来越大,有时可能这些有问题的SQL就是整个系统性能的瓶颈。……
    • 河南村镇银行“无法提现”背后:非法集资集团控制多省及农商行
      11阅读 0条评论 个赞
      此次涉事的村镇银行,多数都由许昌农商行控股,且在过去几年间,都曾因违规放贷被处罚过。同时,在取款难的问题出现后,一家名叫河南新财富集团投资控股有限公司(以下简称“新财富集团”)的企业也浮出水面。据一份储户和接警人员的通话录音显示,新财富集团与涉事银行存在合作关系,涉嫌非法吸收公众存款。北青深一度从当地银行系统的一位内部人员处获悉,现在已经基本确定,新财富集团涉嫌非法集资,且金额巨大。目前银行关闭提现入口,是因为无法鉴别非法资金与合法资金,所以采取了应急措施。……
    • 周小川:求“双碳”最优解大家都在等“1 N”碳价格政策路线图
      1阅读 0条评论 个赞
      博鳌亚洲论坛2022年年会期间,在《实现碳中和:政府在行动》论坛上,中国金融学会会长周小川发言指出,双碳目标的达成是一个中长期问题,为避免运动式减碳,企业和产业目前正寻找最优的减碳解决方案,大家也都在等待“1+N”碳价政策体系的逐渐明朗。……
    • 润达医疗核酸检测“假阳性”事件延烧:检测规模居上海前三 4月检测收入可能超2亿元
      6阅读 0条评论 个赞
      核酸报告“失真”正侵蚀着公众对检测机构的信任。……
    • 提高警惕!微信支付重发代理诈骗提示
      1阅读 0条评论 个赞
      财付通支付科技有限公司(微信支付主体)发布《关于警惕防范代理诈骗的提示》,该公告称,近期,微信支付发现部分公司以“腾讯合作伙伴”等名义收取代理及加盟费用的违规行为。此类行为严重扰乱了微信支付的良好生态环境,微信支付从未以任何形式授权第三方以腾讯、微信、微信支付等官方名义开展市场拓展活动,亦未授权任何第三方公司以代理、加盟或其他形式拓展合作伙伴并收取费用。……
    • 贪腐获刑7年 Aauto Quicker最大反腐案落槌
      0阅读 0条评论 个赞
      北京法院审判信息网公开一审判决书显示,快手原副总裁赵丹阳因非国家工作人员受贿、职务侵占罪被判处有期徒刑七年,其涉案金额合计756万余元。赵丹阳的情妇乔军犯掩饰、隐瞒犯罪所得罪,被判处有期徒刑四年,罚金人民币十万元。赵丹阳下属李磊犯职务侵占罪,被判处有期徒刑一年七个月,罚金人民币十万元。赵丹阳、李磊被责令共同向北京达佳互联信息技术有限公司退赔人民币六万六千八百元。北京市海淀区人民法院称,继续向赵丹阳追缴违法所得人民币668.1万元,予以没收。……
    • 壳牌控股今日在港交所上市交易 收盘30.75港元
      2阅读 0条评论 个赞
      贝壳(NYSE: BEKE)宣布,通过引入的方式,其A类普通股(“股份”)已成功在香港联交所有限公司(“联交所”)主板上市。这些股票在联交所主板交易,股票代码为“2423”,每批100股,股票简称为“BEKE-W”。……
    • 15家银行信用卡年报:铺天盖地的邮政储蓄 奋力复兴的浦发
      1阅读 0条评论 个赞
      信用卡行业正在进入以存量经营为核心的新常态。2021年,以促活、调优、融合为重点,全行业的变革继续加速。年报……
    • SEOer必看的5个3360关键词布局技巧
      2阅读 0条评论 个赞
      关键词在站点优化过程中发挥的作用是意想不到的,各位SEO从业者不仅仅需要每天不断地挖掘新关键词,还要在形成页面的时候,好好思考关键词该如何布局。下面我们就来看看吧……
    • 华融消费金融正式易主宁波银行:70%股权转让或更名宁银小金
      3阅读 0条评论 个赞
      今日晚间,宁波银行发布公告称,近日,华融消金收到中国银行保险监督管理委员会《中国银保监会关于华融消费金融股份有限公司变更股权的批复》(银保监复〔2022〕281 号),对上述股权转让事宜予以核准。截至公告日,公司已完成本次股权受让的相关事宜,已持有华融消金70%股权。……
    • 工商银行、光大银行、中邮人寿因处理消费者投诉被点名通报
      1阅读 0条评论 个赞
      近日,中国银保监会消费者权益保护局发布2022年第7号通报《关于部分银行保险机构违反<银行业保险业消费投诉处理管理办法>的情况通报》(以下简称《通报》),通报了工商银行、光大银行、中邮人寿违反《银行业保险业消费投诉处理管理办法》(以下简称《投诉办法》)的情况。……
    • 40幅最完整的计算机网络思维导图
      1阅读 0条评论 个赞
      传输介质简介以太网帧结构IP编址ICMP协议ARP协议传输层协议路由基础静态路由基础距离矢量路由协议——RIP链路状态协议——OSPFHDLC&PPP原理与应用帧中继原理与配置PPPoENAT网络地址……
    • 蔚来计划第二次在新加坡证券交易所上市 仍采用不融资上市的方式
      1阅读 0条评论 个赞
      5月6日消息,蔚来宣布拟在新加坡证交所二次上市,已取得新加坡证交所主板二次上市的附条件上市资格函。蔚来表示,本次上市将采用介绍上市的方式,不涉及新股发行及资金募集。其美国存托股份(ADS)将继续以纽交所为主要上市和交易场所。在新加坡上市后,这些股票将可与纽交所上市的ADS完全互换。蔚来计划于本月晚些时候发布与二次上市有关的介绍性文件。……
    • 站在8000亿长沙银行上 下一步怎么走?
      0阅读 0条评论 个赞
      无论是坚持轻资本转型、零售优先,还是对公瞄准FPA、加大县域金融等,长沙银行的战略布局都走在了中小银行前列……
    • 燕郊首富李福成的困境:被判有期徒刑三年 还被财务总监“背刺”
      1阅读 0条评论 个赞
      作为打江山者李福成,目睹公司的发展难题,似乎很难真正放手。尽管公司后续和财务总监深入沟通,并暂时示消除了无法保证公司定期报告真实、准确和完整所存在的障碍,补签了相关确认意见,但上交所一针见血的指出,公司在内部控制、财务管理等方面可能存在重大问题。……
    • 原创文章内容的SEO经验总结
      1阅读 0条评论 个赞
      对于seo来说,原创文章是网站优化的一个非常重要的环节,也是很多seo方面的新人都必须经历的环节,下面笔者就来谈一下关于原创文章内容的SEO经验总结……
    • 3种方式!转到错误处理最佳实践
      1阅读 0条评论 个赞
      以下文章来源于公众号-云加社区,作者李森林导语|错误处理一直以一是编程必需要面对的问题,错误处理如果做的好的话,代码的稳定性会很好。不同的语言有不同的出现处理的方式。Go语言也一样,在本篇文章中,我们……
    最近发布资讯
    更多