档案日期2012的2

2012年1月9日 - 2012年1月15日

最后更新于 .

前几天同事的程序有个很奇怪的bug,跟大家分享一下。 描述如下:一个http接口在测试环境下能够正常访问,在外网环境下就会直接超时,并且超时的消耗是建是0ms。 我strace了一下,libcurl在测试环境能正常发包,在外网环境却总是直接返回,连连接都没有尝试建立。 仔细研究了他的代码,发现并没有什么不合理之处,一筹莫展时发现有如下代码:

curl_easy_setopt(curl, CURLOPT_TIMEOUT_MS, (int)(timeout_sec*1000));                                                        
curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT_MS, (int)(timeout_sec*1000)); 

突然想起之前有文章说curl只支持秒级的超时时间,而我们外网的超时配置的是0.5秒。 把超时时间改成1秒之后,果然一切正常了。 google上搜了一下,在如下链接找到了答案: http://stackoverflow.com/questions/1856473/why-would-curl-ignore-curlopt-timeout-ms-but-honor-curlopt-timeout

The version of curl I am using (7.15.5) doesn't support CURLOPT_TIMEOUT_MS. According to Greg I ...

最后更新于 .

前段时间一直没写博客,昨天更新了一篇,今天突然又来了兴致,那就再更新一篇吧(所以说啊,治疗拖延症最好的方法就是现在开始做) 这篇还是一些技术的整理,主要是用于备忘,大家如果觉得太简单就一笑而过啦~

一. python通过图片内容判断图片类型

前段时间写了一个小站练手,http://xiangshuguo.com,一个支持自由上传的图片小站。 因为要限制上传图片的格式,所以要做文件类型检测,代码如下:

def get_image_type(pd, is_path=True):
    '''
    获取图片的类型,支持传入路径和文件内容
    '''
    if is_path:
        f = file(pd, 'rb')
        data = f.read(10).encode('hex')
    else:
        data = pd.encode('hex')

    ftype = None

    if data.startswith('ffd8'):
        ftype = 'jpeg'
    if data ...

每日归档

上周

2012年度第 1 周

下周

2012年度第 4 周

归档