Month: 八月 2014

HeroKu的HTTP API 设计指南(中文版)

简介

本指南中文翻译者为 @Easy ,他是国内首家互联网人才拍卖网站 JobDeer.com 的创始人。转载请保留本信息。

本指南描述了一系列 HTTP+JSON API 的设计实践, 来自并展开于 Heroku Platform API 的工作。本指南指导着Heroku内部API的开发,我们希望也能对Heroku以外的API设计者有所帮助。

目录

基础

  • 总是使用TLS
  • 在Accepts头中带上版本号
  • 通过Etags支持缓存
  • 用Request-Ids追踪请求
  • 用Ranges来分页

请求

  • 返回适当的状态码
  • 总是返回完整的资源
  • 在请求body中接收JSON序列
  • 使用一致的路径格式
  • 小写所有路径和属性
  • 支持非ID的参数作为快捷方式
  • 少用路径嵌套

响应

  • 总是提供资源(UU)ID
  • 提供标准的时间戳
  • 使用ISO8601格式的UTC时间
  • 嵌入外键数据
  • 总是生成结构化的错误信息
  • 显示频率限制的状态
  • 在所有的响应中压缩JSON数据

文档及其他

  • 提供机器可读的JSON格式
  • 提供人类可读的文档
  • 提供可执行的示例
  • 描述稳定性

GET新知社区是什么,为什么?

我们发布了一个新的知识社区,但我们CTO罗飞同学在测试GET新知社区流程时,很困惑的问我:

这货到底是啥?

于是我知道有必要写一篇文章来介绍它一番了。

先说为什么。

缘起

自从有了微博,我每天大量时间都消耗在上边。博客荒废了,Google Reader扔在一边,等想起来时发现都关闭了。

但是浏览了一遍自己转发和收藏的微博,我发现自己其实很少从微博获取「知识」,更多的是「乐子」。微博上的「乐子」容易传播,「知识」却难以沉淀,它们很快就随着时间被信息流冲走了,即使你收藏的微博打开往往也是一堆「已删除」。

我迫切的希望自己的知识可以沉淀下来、整理规整,和志同道合的同事和朋友分享讨论。

我想要一个社区,面朝知识、简洁雅致。

如果一个程序员说要有光,那么很快就会有光了,于是现在有了GET新知社区(以下简称GET)。

GET定位于知识管理和分享,它的功能贯穿了我们获取、使用和分享知识的全过程,它的形态整合了 Readability 、 Delicious、HackerNews三大类产品。…

落地页优化必用的离站提示JS工具:Ouibounce

这次和大家分享一个我们在做落地页优化的时候用到的很有意思JS —— Ouibounce

说起离站提示,我们都会想起on leave事件,但on leave不能指定自己的文案和样式,而且弹窗非常生硬,只能yes or no。

我一直以为也只能这样了,直到看到了Ouibounce。

它可以在用户关闭网页之前显示自定义格式的模式窗口。原理大概是识别鼠标移动,然后触发事件。

演示效果如下:

687474703a2f2f636c2e6c792f696d6167652f32433270306c3357314d30302f6f7569626f756e63652e67696

 

其实是个很小的trick,但Jobdeer官网加上它以后,每天多了大概10个用户帮我们分享到微博,非常有效,建议做落地页优化的时候不要忘了它。

你可以点击 http://abc.jobdeer.com 查看效果,当你试图去关闭页面时,就能看到分享窗口啦。Ouibounce自带cookie识别,保证每个用户只会显示一次。…