本文首发于 cartoon 的博客
转载请注明出处:https://cartoonyu.github.io/c…
-
Get 和 Post 请求有哪些区别?
- Get 方法不改变数据库状态,POST 会改变数据库状态
- 回退页面 / 刷新时,Get 不会再提交数据,Post 会再次提交数据
- Get 能被客户端缓存或保存,Post 不能
- Get 的数据长度受 url 限制,Post 数据放在 requestBody 上,不受 url 限制
-
如何实现跨域?
- 参考博客:https://blog.csdn.net/ligang2…
- 图片 ping 或 script 标签跨域
- JSONP 跨域
- CORS
- window.name+iframe
- window.postMessage()
- 修改 document.domain 跨子域
- WebSocket
- 代理
-
说一下 JSONP 实现原理?
- 尚未接触
-
说一下你熟悉的设计模式?
- 代理模式。程序调用子模块通过代理实现
-
观察者模式(观察者角度)
-
主动式
- 观察者持有主题的引用
- 主题发布更新,并通知观察者
- 观察者调用主题成员方法获取更新
-
被动式
- 主题持有观察者列表
- 主题发布更新,并循环列表向观察者发布更新内容
-
-
单件模式
- 当前类在系统中只有一个对象
- 利用 volatile 以及 synchronized 保证多线程下的安全
-
策略模式
- 将实体属性与行为分开
- 行为通过接口注入的形式注入到实体中