Skip to content

Instantly share code, notes, and snippets.

Avatar

Sun Junyi fxsjy

  • Tencent
  • Beijing, China
View GitHub Profile
@szxw
szxw / 12306.user.js
Created Jan 11, 2014
脚本效果:选择12306车票预定时,在勾选了"开启自动查询"的情况下,将页面刷新时间由5s一次变为1s一次。(1000ms,可以自主修改) 使用方法:下载该文件或者复制该文件内容,命名为12306.user.js。在chrome浏览器,打开 "设置"->"扩展程序",将该文件拖动到中间,chrome会出现''拖放以安装"字样。将文件拖入其中即可安装。
View 12306.user.js
// ==UserScript==
// @include https://kyfw.12306.cn/*
// ==/UserScript==
var ctjs = document.createElement("script");
ctjs.type = "text/javascript";
ctjs.innerHTML = "autoSearchTime = 1000;"
var head = document.getElementsByTagName("body")[0];
head.appendChild(ctjs);
@JacksonTian
JacksonTian / api.js
Last active Jun 28, 2016
Go语言的actor并发模式更容易,一点都不绕,比如要实现一个API,API内部有两个http接口A,B并发调用,如果都在200ms内返回,则合并结果输出,如果B比A慢,且B耗时超过200ms,则丢弃B调用只返回A结果;用Go很容易实现这个逻辑,50行 - 牛,学到了,但看逻辑是不是A和B如果都超过200ms了就无结果输出?这种情况下需要等A返回了再返回 - 逻辑还可以再完善一下,如果ab都在200ms内返回应该在慢的那个返回时就触发,而不是等到200ms - 接着上面的需求,如果B之后还要根据B的结果来判断是否要调用C,然后B和C的结果和A join后再进入下一个阶段 用我自己的EventProxy库做了下重构 https://gist.github.com/4364823 加注释50行。
View api.js
var callA = function (callback) {
setTimeout(function () {
callback({name: "a", data: "I am result A"});
}, Math.round(Math.random() * 300));
};
var callB = function (callback) {
setTimeout(function () {
callback({name: "b", data: Math.round(Math.random() * 300)) % 2 === 0});
}, Math.round(Math.random() * 300));
@pokstad
pokstad / rediswebpy.py
Created Sep 7, 2011
Redis session store backend for web.py
View rediswebpy.py
import redis
import web
SESSION = 'SESSION:'
class RedisStore(web.session.Store):
"""Store for saving a session in redis:
import rediswebpy
session = web.session.Session(app, rediswebpy.RedisStore(), initializer={'count': 0})