在选择CoudhDB做数据库,Apache做Web服务器时,在客户端用ExtJS可以直接通过HTTP来访问CouchDB的数据。但通常CouchDB和Apache是位于不同的端口,这也就意味两者位于不同的域,所以对于ExtJS而言,要想使用CouchDB,必须得使用ScriptTagProxy来进行跨域访问了。
但ScriptTagProxy在实际使用中发现,如果一个返回的JSON字符串较长,CouchDB会将JSON使用’\n’截断,在Chrome/Firefox下都会提示”无法解析json”(Firefox下错误消息为”invalid label”),但如果不跨域使用HttpProxy来解释包含有’\n’的JSON字符串,却能正常工作,看起来似乎是ScriptTagProxy和HttpProxy在解释JSON字符串的方式有上区别吧。