HTTP 状态代码

浏览器或者应用程序在请求网页的时候服务器会返回 HTTP 状态代码以响应该请求,此状态代码提供了有关请求状态的信息。
一些常见的状态代码:

  • 200 – 服务器成功返回网页
  • 301 – 永久移动(重定向)
  • 302 – 临时移动(重定向)
  • 404 – 请求的网页不存在
  • 503 – 服务器暂时不可用

通过这些状态码,我们就可以得到服务资源的状态,从而作出相应的处理。
HTTP 状态代码的完整列表
W3C page on HTTP status codes
注意,这些状态码是HTTP1.1所定义的。
-EOF-

App Engine SDK 1.3.4 Released

Google在Google I/O宣布了App Engine for Business后发布了App Engine SDK 1.3.4,更新了如下部分:

  • 新的bulkloader配置语法和容易的数据导入导出向导
  • 应用可以在创建的时候配置使用OpenID来认证身份。
  • 新的API允许将App Engine Apps作为OAuth服务提供商。
  • dev_appserver支持自动运行task,使用–disable_task_running命名关闭。
  • 修正db.put()构造函数基于keys初始化ID的BUG。

Download the Google App Engine SDK

PS:貌似SSL for Custom Domain是给App Engine for Business用的,普通用户还是用不到,杯具。
-EOF-

GAE即将支持的特性

一切值得期待的Google App Engine即将支持的特性:

  • 第三方域名证书支持
  • 后台服务具有运行超过30秒能力
  • 储备实例的能力,以减少应用程序加载的开销
  • 数据库选择不同可用性VS延迟选择的能力
  • 支持跨数据集映射的操作
  • 数据存储的导入与导出
  • 提高某些API的请求/响应大小限制
  • 改进应用的监测和预警服务
  • 支持浏览器推送(HTTP Push)
  • 内建的OAuth & OpenID支持

不过偶更希望回复对于裸域名(naked domain)绑定的支持。
via App Engine Product Roadmap [2010-05-16]
-EOF-

一周CSS怪异事件记录

网页上代码累积多了就会出问题,这周遇到了几个奇怪的现象原因不明,不过好歹还是给解决了。

  1. 同一行上margin设置了后应该都是垂直居中的,最近做的一个项目里margin-top和margin-bottom值不一样在IE7下面却无法实现居中,将其值设置为一致解决了部分问题。更奇怪的是也可能出现一两个像素的偏差,同时设置height和line-height解决问题。
  2. 多个css类选择器无法水平居中对象。偶们的日期控件加了一个Reset按钮,这个按钮有两个css的class,里面分别设置了margin,问题就来了,即使有优先级,也无法居中。去掉其中一个CSS仍然无法居中,同时给父级元素加text-align:center居中,解决问题。
  3. 上面2的问题解决后又出现一个背景蒙版层和蒙板层上的内容的margin-left:0失效,若干CSS Hack调整不同浏览器下的margin-left值后解决问题。

导致的原因总是会有的,代码太多很难查出来,两小时无法完成也只有HACK了,这里记录一下。
-EOF-

JS Image对象图片类型合法性

有时候文件名后缀是可以伪装的,比如说将一个记事本文件xx.txt改成xx.jpg,这时候只利用后缀来判断选取的文件是否满足条件就不靠谱了,此时Image对象就派上用场了。
如果图片无法显示那当然是不正确的格式了,会引发onerror事件,代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
	var img = new Image();
	img.onload = function(){
		alert('load');
	};
	img.onabort = function(){
		alert('abort');
	};
	img.onerror = function(){
		alert('error');
	};
	img.src ='http://www.google.com.hk/intl/zh-CN/images/logo_cn.gif';
	var _img_ = document.getElementById('imgplace');
	_img_.appendChild(img);

另外onabort事件目前仅有IE支持,FF,Opera,Chrome,Safari统统不支持。
FAQ:如何激活Image对象的abort事件?
A:弄一张超级大的图片(比如说4M),等浏览器载入到一半的时候按停止载入。
-EOF-