某人的不靠谱杂货铺

为之生,为之死。

August 27, 2017, 碎碎念

在 HongKong 的那些天那些事

终于忙完了,有了闲空可以写一写那些天在 HongKong 遇到的一些人,一些事。

June 21, 2017, 代码折腾所

关于 HTTP OPTIONS

本文参考了两篇文章:

首先 OPTIONS 方法不应该像 GET, POST, PUT 等方法一样返回内容,它返回的应该就只有Header。

OPTIONS 的功能基本上只有两个:

  • 在普通访问中,它会返回同 URL 中允许访问的 METHODS
  • 在跨域访问 (CORS) 中,返回对应的原站 (Origin) 能访问的METHODS

May 25, 2017, 1 comment, 碎碎念

Nougat(Misuzu) 的进展和改变

Misuzu 这个名字被人吐槽了很久,不知道怎么读,也不知道什么意思。所以就改成了 Nougat 这个名字,意为牛轧糖。

May 19, 2017, 1 comment, 碎碎念

一场诡异的梦

终于放了很长的一段假期后,我重新回到了学校。明明来这学校很久了,可是我还是无法记住整个学校的所有路径。甚至我已经忘记了这段假期放假的理由。

我的学校坐落于一个偏僻的地方,旁边一栋其余的建筑物都没有。整个学校在天空看起来就像一个巨大的堡垒,在其周围是一些泥土小路,少有的几条沥青公路,并不能见到任何高架公路。其余地方均是被黄图覆盖的大地。

April 19, 2017, 2 comments, 代码折腾所

Misuzu 偏执的 WEB 框架

我是一个不折不扣的偏执狂,所以我认为所谓的产品就应该是为了特定的人群而服务的。这同样适用于 WEB 框架。

现在 Python 中的三大 WEB 框架(Flask, Tornado, Django) 都属于通用型框架,并不存在一个为 API ,尤其是 REST API 设计的框架。这也是 Misuzu 被创建的原因之一。

February 8, 2017, 1 comment, 代码折腾所

Python Web 从入门到放弃:Flask or Tornado

Python Web 这个领域一直都处于不温不火的情况,但是因为 Python 的易上手性,导致了一部分人也在坚持着这一个领域。
Python Web 框架主要有: Django、Flask、Tornado。

这三大党派都有自己坚持的理由:

  • Django Full Stack 式的开发模式,开发者查看官方文档即可实现大部分网站的大部分功能。
  • Flask Minimal 的框架,框架内部只实现了基础功能。Extensionable 的设计,让你的绝大部分功能都可以通过其他开发者完成的 Extension 来实现。
  • Tornado 三者中唯一一个异步框架,Web Framework 和 HTTPClient 的结合,同时也是一个简约的设计。

January 6, 2017, 代码折腾所

Rust Web初试

Rust 是最近中意的一门语言。相比于 C 和 C++,我更加喜欢 Rust 的语法。

奈何 Rust 的学习曲线太陡了,一直都只能在入门阶段徘徊,没能深入了解 Rust。 个人感觉最大的问题在于没能搞懂 Rust 的所有权、引用借用和生命周期三个方面。

因此,我尝试着用 Rust 来进行 Web 开发,从而加深对 Rust 语法的了解。

December 19, 2016, 代码折腾所

Python args 解析库 click

click

前段时间,需要用 Python 来写一个 CLI 程序的时候,只能找到比较好的命令行参数解析库 getopt 和 argparse。可是这两个库都不太 Pythonistic。

私以为 Python 最大的亮点/语法糖就是在于装饰器的优雅,一个好的 Python 库必然有很好的装饰器使用。

December 5, 2016, 2 comments, 奇思妙想

山寨红色 iPhone 5S

突发奇想,买了一个祖国版 iPhone 5S ,这个红色是不是很好看呢。

November 25, 2016, 3 comments, 代码折腾所

如何正确的部署 Flask 项目

系统 Python 设置

由于每个 Linux 发行版的内置 Python 都不太一样,而且为了避免你的项目在不同的 Python 版本下出现各种奇怪问题。

比如,requests 库在 python 2.7.5 的环境下访问 HTTPS 网站会出现 SNI 的问题,导致访问失败。

所以我们需要使用 pyenvvirtualenv

注:强烈不建议直接更新系统里面的 Python ,否则你会出现各种各样的奇怪问题