前端常见面试题(一)

最近找新工作,经历了几场面试,根据面试整理了一些常见的问题。

1、git有使用过吗?平时怎么使用?

git在开发中用来进行项目托管。项目中一般有三个分支,主分支master,只有经理有权限操作,我们开发功能是在develop分支下面创建的子分支中开发,项目开发完了,切换到develop分支,拉取最新的develop分支,接着合并自己的任务分支,并推送develop分支。经理把合并的代码推到master分支上,release分支是用于测试的分支。

2、接口会跨域吗?为什么会出现跨域?有哪些解决方法?

会跨域。

原因:浏览器的同源策略,当服务器和客户端之间域名、端口、协议中有一项不一致时就会出现跨域。

解决方法:

  • 建一个跨域浏览器;
  • proxy代理;

proxy的配置方法:

根目录里建立:vue.config.js文件然后:
  module.exports = {
  devServer: {
    proxy: {
      "/api": { //自定义
        target: "http://你的服务器地址/api", //这里可以跟随项目实际部署服务器来
        changeOrigin: true,
        ws: true,
        pathRewrite: {
          "^/api": ""//自定义
        }
      }
    }
  }}

  • jsonp;

原理:动态创建一个 script 标签。利用 script 标签的 src 属性不受同源策略限制。因为所有的 src 属性和 href 属性都不受同源策略限制;

  • CORS跨域资源共享;

原理:服务器设置 Access-Control-Allow-OriginHTTP 响应头之后,浏览器将会允许跨域请求;

3、本地持久化的方法,他们有哪些区别?

本地持久化方法:sessionStorage、localStorage、cookie。

相同点:都保存在浏览器端;

不同:

①传递方式不同 : cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递。sessionStorage和localStorage不会自动把数据发给服务器,仅在本地保存。

②数据大小不同 : cookie数据还有路径(path)的概念,限制cookie只属于某个路径下。cookie只适合保存很小的数据,一般只有4k;sessionStorage和localStorage 也有存储大小的限制,但比cookie大一些,一般是5M(具体大小根据浏览器而定)。

③数据有效期不同 : sessionStorage:仅在当前窗口关闭之前有效;localStorage:只要不删除,始终有效;cookie可以设置有效期,在有效期内一直有效;

④作用域不同:sessionStorage不同的浏览器窗口中的数据不能实现共享;localStorage 和 cookie是在所有同源窗口中都是共享的。

4、https和http有什么区别

  • 费用: HTTPS 协议需要到 CA (Certificate Authority,证书颁发机构)申请证书,一般免费证书较少,因而需要一定费用。(以前网易官网是 HTTP,而网易邮箱是 HTTPS 。)
  • 安全性: HTTP 是超文本传输协议,信息是明文传输,HTTPS 则是具有安全性的 SSL 加密传输协议。
  • 端口:,HTTP 的端口是 80,HTTPS 的端口是 443。
  • 连接方式:HTTP 的连接很简单,是无状态的。HTTPS 协议是由 SSL+HTTP 协议构建的可进行加密传输、身份认证的网络协议,比 HTTP 协议安全。

时间不早了,今天先整理这几个问题,后面会继续更新新的题目。

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值