大前端接口规范

1、基本规范

  • 查询、获取之类的接口,通用get请求
  • 添加、修改、删除的接口,通用post请求

2、基本json格式

1
2
3
4
5
6
7
8
9
//当code == 200时候 是成功 data中是要用的数据
//当code != 200时候 msg中是错误的信息,用于前端的错误提示
{
"code": 200,
"data": {
},
"msg": "xxxxxxxxxxx",
}

阅读全文

分享

大前端测试与自测规范

    最近公司的QA团队,召集大家,公布了他们最近研发的一个内部测试管理网站,规范了产研团队的提测规范。
    大体意思入下:

  • 1.提测不能随便,要看测试的时间安排
  • 2.测试有质量之分,先进行冒烟测试,冒烟测试不过的话,直接打回去,记一次不合格
  • 3.按步骤的测试流程………………

    让我想起来,我之前制定大前端内部规范的时候,也制定了自测规范,发展到现在,具体入下:

阅读全文

分享

由乐视CDN看前端性能优化

最近,我们的系统告别了自己搭建静态服务器的时代,开始对接乐视网的CDN,以做更好的静态加速。
总所周知,cdn加速是前端性能优化的一大利器,具体请见百度百科

而乐视网CDN也有自己的特点:

  • 1、强缓存时间1年整,Cache-Control:max-age=31536000
  • 2、每次上线,地址不一样,格式为http://js.letvcdn.com/lc02_lecloud/201511/25/09/39/xx.min.js,即每次上线JS,都会按时间给出地址
  • 3、css、js,各自是一个域名,图片的话,有如下4个域名:
    • http://i0.letvimg.com/
    • http://i1.letvimg.com/
    • http://i2.letvimg.com/
    • http://i3.letvimg.com/
  • 4、支持https、http无缝切换
  • 5、负载力强,支持全球加速,再也不用担心JS挂掉了

1、为毛都是单独的一级域名?

为了不与主站的域名重复,免得携带cookie过去

2、为毛图片域名是4个,不是1个?

阅读全文

分享

H5界面微信分享抓取规则与优化

    最近做了saas的H5界面,微信分享给好友看一下,咦,跟从UC浏览器分享的新闻,长的不一样啊。
    这个是我的分享
我的分享

阅读全文

分享

IE的JS兼容性问题

    在与产品撕扯之后,确定了我们的系统,只支持IE9+,而且控制台系统,只支持IE11。
    但就算这样,IE照样爆出bug来。

1、ajax强制304

    例子:请求了一个列表——添加一条数据——再请求这个列表——数目不添加
    打开IE的开发工具查看,数据又正常了,使用抓包工具查看,原来IE会把之前请求过的ajax地址,都当做304给处理,直接拿的缓存,没走实际的后台接口。
    解决方案:ajax请求加时间戳、或加随机数、或jquery ajaxcache设置为false

阅读全文

分享

-----html5 history 提高用户体验

分享

大前端工作流程规范

1. 上线规范

  • 一般情况下,周五不上线
  • 上线流程:
    • 发提测邮件
    • 测试通过后,在提测邮件上,发上线报备
    • 上线之后,线上复测
    • 上线的时候,核心开发人员需要在公司

2. 排期规范

阅读全文

分享

跨域:(四)chrome浏览器本地跨域——Mac

类似于Windows下的chrome,也需要先创建个个人目录,如/Users/zhaoshengdi/MyChromeDevUserData/
然后将已打开的chrome退出,运行如下命令:

1
open -a'Google Chrome' --args --disable-web-security --user-data-dir=/Users/zhaoshengdi/MyChromeDevUserData/ --allow-running-insecure-content

这样的话,也会启动一个无需进行任何设置,就可以跨域操作的浏览器,进行接口的调试等相关工作。

分享

跨域:(三)chrome浏览器本地跨域——Windows

还有一种方法,可以在本地调试过程中,设置绕过跨域的问题。
这就是我们强大的chrome浏览器,有自己的方法。

Windows chrome免跨域设置方式

在chrome的某个快捷方式下,右击选择属性,在属性页面中的目标输入框里加上 –disable-web-security 如下图所示:

点击应用和确定后关闭属性页面,并打开chrome浏览器。如果浏览器出现提示“你使用的是不受支持的命令标记 --disable-web-security”,那么说明配置成功。
如上是旧版的chrome浏览器,如果是新版的话,就麻烦了点。

阅读全文

分享

跨域:(二)cookie、canvas等跨域

前端跨域,除了接口的跨域之外,还有其余N多形式的跨域

1、iframe调用

如果iframe如果是跨域的话,就无法进行父、子界面的数据交互,无法进行dom操作、无法进行方法调用。
如果是跨域的话,子界面无法请求到父界面的location地址,但是可以改写,这个可以有效防止自己的界面被恶意网站做iframe嵌套。
iframe还有一个绝招,就是设置相应header,直接不允许跨域加载

2、cookie的跨域

自从localstorage出来之后,cookie很少记录缓存了,现在一般用于记录用户的登录信息,用于网站界面之间的跳转。
cookie也有域之分,也可以设置根域。
跨越接口请求,携带cookie的话,在前文中有解决方案。
利用cookie的跨域特性,一般大公司的cdn或者静态资源服务器,都会使用不同域名的服务器,免得cookie带过去,又浪费带宽,又加大了服务器解析请求头的时间。

阅读全文

分享
返回顶部