借助node-google模块,我编写了一个简单的节点模块,为我的Web应用启用了“文本网页搜索”功能,并在我的某个视图中显示结果。
由于来自同一IP Google的相当少量的查询返回503错误后,我决定在客户端上使用该模块,因此限制是每个客户端,而不是每个服务器。
我确实使用browserify将节点模块转换为在客户端页面中获取的脚本。
脚本只需要“google.js”,它的长只有20行JavaScript代码:Browserify生成*巨大*输出文件
'use strict';
var google = require('google');
var Google = Object.create({});
var Google.search = function(text, callback) {
...
});
// end of the script
我使用的命令很简单:
$ browserify google-search-module.js -o app/scripts/google-search.js
的问题是,输出browserify产生是远大于我所期望的:一个1.2 kB模块成为一个2.4 MB的脚本!也许它也包括所有'谷歌'的依赖关系,但.. ..,
问题是:这是正常的吗?我的搜索页面是否预计会加载一个2.4 MB文件来搜索Google上的一些文本?
我敢肯定,我失去了一些东西,但无法理解什么... :-(
除了大小(这可能是由依赖关系引起的),它实际上是从浏览器工作吗? – robertklep
我没有理由怀疑它实际上在浏览器中工作..但是,我甚至没有测试它:这是一个次要问题,考虑到文件的大小。但是,如果这可以帮助,我会尽快尝试并在此处报告。 – MarcoS
如果你不能在浏览器中使用它,大尺寸不会再是问题了,我想:D – robertklep