asp 编写小程序接口,少不了 json 操作,而传统的 vbs,对 json 处理很不友好。不过,asp 除了可以使用 vbs 脚本,我们也可以使用 jscript 脚本,使用 JScript 脚本后,输出 json 就很方便了。
基本原理,利用 IE9 提供的 JSON 对象来进行编解码,2012 以上已经是IE10了,如果是 2008 R2 系统,需要先安装 IE9 ,上代码了:
var doc = Server.CreateObject("htmlfile");
doc.write("<meta http-equiv='X-UA-Compatible' content='IE=edge' />");
var win = doc.frames;
// 编码封装
function json_encode(data) { return win.JSON.stringify(data); }
// 解码封装
function json_decode(str) { return win.JSON.parse(str); }
// 注意,需要使用浏览器内置的 Array 构建数组才会解析为数组,asp默认的 数组是 IE7环境的数组,在IE9中会被识别为 Object。
Response.Write(json_encode({ arr: win.Array( 0, 1, 2 ) }));