IE缓存问题

今天调试的时候发现一个比较头疼的IE缓存问题。

我发送了个ajax请求,请求成功则往浏览器session里写更新一条数据。
再刷新页面时,因为session更新了所以这个页面上应该会出现一个新的条目。
但是在IE下并没有成功。不停的刷新都没有用,除非清空浏览器缓存。

一开始怀疑是ajax请求发送失败,但测试下来是成功的。
那是什么原因造成IE读取不了新的session呢?
后来通过查看net请求,发现IE在更新页面时读取的是浏览器缓存的页面session,而不是新session。
http响应为403,不是200。
这个问题在chrome、firefox等浏览器下并没出现。其他浏览器会自动更新缓存。

感觉我表达的不是很清楚……因为第一次碰到这问题,也不知道该怎么描述。
最后通过给ajax请求增加时间戳来强制让IE读取服务器发送过来的请求,而非浏览器缓存的请求。

returnvalue & xwrapper

introduction

背景是WebService,具体实现是XFire。由于某种原因XFire的Fault无法使用,导致只能使用返回值表示成功与错误的情况。举例如下:

实际实现时,发现服务有很多方法,每个方法有各自的返回类型,有部分重复。其次是服务端每个方法都必须try catch,把错误转化为返回值。第三是客户端代码也有重复,每次都要检查是否为null和是否成功。
为了减少重复代码,提供如下方案:

Read More

compile install mysql 5.6.10 and optimize for low memory VPS on debian 6

compile

initialize database

Read More

5k5购机记

配置列表

CPU Intel i5 3470 ¥1288
Motherboard GIGABYTE ga-h77-ds3h(rev 1.1) ¥679
Memory Kingston 4G 1600MHz ¥159
Graphic Card Sapphire HD 6770 1G ¥699
Wireless Card TP-LINK TL-WN851N 300M ¥154
Power Seasonic SII2-520W ¥439
Case Cooler Master RC-550-KKN1 ¥459
Monitor Dell U2312HM ¥1377
Hard Disk Seagate ST500DM002 SATA3 500G ¥345

No mouse, keyboard, dvd-rw

选配

选择台式机的原因一个是笔记本比较贵而且屏幕相对小,一体机总觉得差那么一点,另一个原因是去年就想配一台电脑,但是感觉没啥特别强烈的需求暂时放下了。
配机前我看了很多资料,一个配机小白懂了很多以前不知道的知识。比如CPU的针数要和主板支持的一致,电源要根据显卡等配件的功率来,盒装CPU一般情况下自带一个风扇,主板上的跳线安装等等。
挑选配件的时候,逐步摸索出按照品牌,性价比,功能需求的套路。

Read More

jQuery slideDown snap back issue

这个问题得用视频才能演示出来……视频之后更新。

标题用的是stackoverflow上的。

我碰到的情况是,div.to-slide里有float元素。
div.to-slide在触发slideDown()动画后,会先down到超过div本身应该的高度,再反跳回原来的高度。
排查了很久都没找到原因。终于最后在stackoverflow上找到了一篇解释这问题的。
原来这个问题并不限定于内部有float的slidedown元素。float只是其中一种情况。
在div.to-slide没有展开情况下,jquery算出的高度有误,所以才会出现高度差反跳。

触发这个bug的原因很多,比如:无宽度,自适应或继承父元素宽度(我的问题就是这个)。

详见 slidedown animation jump revisited