1. http协议 、
http是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。
客户与服务器之间的HTTP连接是一种一次性连接,它限制每次连接只处理一个请求,当服务器返回本次请求的应答后便立即关闭连接,下次请求再重新建立连接。
HTTP是一种无状态协议,即服务器不保留与客户交易时的任何状态。这就大大减轻了服务器记忆负担,从而保持较快的响应速度。
HTTP是一种面向对象的协议。允许传送任意类型的数据对象。
支持B/S及C/S模式。
2. tcp udp区别、
TCP和UDP是OSI(开放式系统互联)模型中的运输层中的协议。TCP提供可靠的通信传输,而UDP则常被用于让广播和细节控制交给应用的通信传输。
TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接
TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付。
UDP具有较好的实时性,工作效率比TCP高,适用于对高速传输和实时性有较高的通信或广播通信。
每一条TCP连接只能是点到点的;UDP支持一对一、一对多、多对一和多对多的交互通信。
TCP对系统资源要求较多,UDP对系统资源要求较少。
3. 堆和栈的区别、
栈是一种运算受限的线性表,其限制是指只仅允许在表的一端进行插入和删除操作,这一端被称为栈顶(Top),这种受限的运算使栈拥有“先进后出”的特性。
堆是一种常用的树形结构,是一种特殊的完全二叉树。
栈由操作系统自动分配释放,无需我们手动控制;堆的申请和释放工作由程序员控制,容易产生内存泄漏;
栈由系统自动分配,速度较快。但程序员是无法控制的。
堆是由new分配的内存,一般速度比较慢,而且容易产生内存碎片,不过用起来最方便。
4. MVC框架、
MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式:
Model(模型)表示应用程序核心(比如数据库记录列表)。
View(视图)显示数据(数据库记录)。
Controller(控制器)处理输入(写入数据库记录)。
MVC 分层有助于管理复杂的应用程序,因为您可以在一个时间内专门关注一个方面。例如,您可以在不依赖业务逻辑的情况下专注于视图设计。同时也让应用程序的测试更加容易。
MVC 分层同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑
。
6. 状态码:400 500 501 401什么错误
常见状态码:
200 OK //客户端请求成功
400 Bad Request //客户端请求有语法错误,不能被服务器所理解
401 Unauthorized //请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用
403 Forbidden //服务器收到请求,但是拒绝提供服务
404 Not Found //请求资源不存在,eg:输入了错误的URL
500 Internal Server Error //服务器内部错误,无法完成请求
501 Not Implemented //服务器不支持请求的功能,无法完成请求
503 Server Unavailable //服务器当前不能处理客户端的请求,一段时间后可能恢复正常
505 HTTP Version not supported //服务器不支持请求的HTTP协议的版本,无法完成处理
7. vue 父组件怎么像子组件传递数据的 子向父怎么传递的
父组件向子组件传递数据通过标签属性的方式来传递
在子组件上进行接收
子向父传递数据,通过事件的方式传递
在子组件的标签上加入一个 自定义事件
8. v-if 与v-for的区别
v-if多个元素通过条件判断展示或者隐藏某个元素。
进行两个视图之间的切换。
v-for用于数组的选项列表进行渲染。
v-if和v-for同时使用时,v-for具有比v-i更高的优先级。v-if 将分别重复运行于每个 v-for 循环中。
9. pust和get请求的区别
GET 请求指定的页面信息,并返回实体主体。
HEAD 类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头
POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。
PUT 从客户端向服务器传送的数据取代指定的文档的内容。
区别:
POST的安全性要比GET的安全性高。比如:通过GET提交数据,用户名和密码将明文出现在URL上
GET提交的数据大小有限制(因为浏览器对URL的长度有限制),而POST方法提交的数据没有限制.
GET方式需要使用Request.QueryString来取得变量的值,而POST方式通过Request.Form来获取变量的值。
10. 框架模式有哪些?
MVC、MTV、MVP、MVVM、CBD、ORM等等;
11. 框架有哪些?
①AngularJS,一个由zdGoogle维护的开源前端框架。回
②ReactJS,一个由Facebook研发的非MVC框架。
③Bootstrap,github热门前端框答架。
④Fundation,一个用于快速开发的前端框架。
⑤VueJS,一个数据驱动的前端开发框架。
12. 设计模式有哪些?
工厂模式、适配器模式、策略模式等等