小编amp*_*and的帖子

set node.js REPL模块路径

我无法弄清楚如何添加路径到我的Node.js安装(Mac OS X上的v.0.4.7).我安装了npm,它全局安装到/usr/local/lib/node_modules.但是,当我安装npm时,它没有通知Node它选择放置全局模块的位置(应该有吗?).现在,当我在命令行模式下使用Node时,我不能简单地使用require()全局安装的模块.所以,我想知道是否有某种Node配置文件或环境变量,我可以添加我的全局npm模块安装路径?

我知道,我可以把它添加到require.paths阵列,当我在节点的命令行来的,但我想一劳永逸添加此全局模块文件夹,因此该节点将随时搜索模块的目录,当我require()他们的命令线.在此先感谢有关使npm和Node共存的任何帮助和指示!

node.js npm

19
推荐指数
1
解决办法
8436
查看次数

使用jQuery.ajax()无法使用AJAX从iOS设备中保存到主屏幕的AJAX访问清单缓存文件

我正在制作一个webapp.它加载的一些文件包含纯静态.JSON数据.我正在使用带有dataType的jQuery.ajax()(jQuery 1.5.2):'json'和cache:true.一切正常,所有文件都已加载.我还配置了缓存清单来缓存这些JSON文件(除了css,js和images).一切都运行良好 - 当用户访问我的网站时,我需要的所有文件都正确缓存(我有applicationCache事件处理程序,确认一切都很好).我已经测试了谷歌浏览器中的所有内容,我可以看到所有文件(包括JSON文件)都已缓存.当我断开网络连接时,一切正常(jQuery ajax调用自动获取缓存的JSON文件).

现在我试图在移动Safari上测试这个(在实际的iPad和iPhone模拟器上).在Safari中,一切都按预期工作 - 页面被缓存,并且在网络断开的后续访问中,使用缓存的文件.

但是,当我使用Safari中的"添加到主屏幕"将应用程序添加到主屏幕时,应用程序启动并且所有.js,.css和图像都正常工作,但我的Ajax调用没有!他们不访问缓存的.json文件.对于每个Ajax调用,XMLHttpRequest.statusis 0,.statusTextis error,但getAllResponseHeaders()显示与Safari中的功能应用程序相同(正确)的标头.

我不懂.这是jQuery的.ajax()中的限制/错误还是什么?任何帮助表示赞赏.

javascript jquery caching manifest

11
推荐指数
1
解决办法
5315
查看次数

apache mod_rewrite等价于node.js?

是否有一个与Node.js相同的模块来完成Apache的mod_rewrite所做的事情?或者是否有提供等效功能的标准语言结构?

我刚开始使用Node并希望将我的服务器转换为这个平台.

mod-rewrite node.js

9
推荐指数
1
解决办法
9108
查看次数

window.applicationCache更新冻结浏览器 - 如何降低频率或强制它们由用户启动

我创建了一个Web应用程序,它缓存所有必要的代码和数据,以便通过applicationCache脱机使用.但是,每次应用程序启动时,它都会立即尝试检查更新.这会阻塞浏览器很长一段时间,即使它没有找到任何要更新的内容.这种行为对应用程序具有很大的破坏性(不应该在后台进行更新,无论如何?).只是检查阶段需要在移动设备上花费大量时间,如果它发现更新,所有下注都将关闭下载需要多长时间(b/c它必须重新下载所有文件) - 这也冻结了浏览器.

所以,我想知道:

  1. 有没有办法将applicationCache更新委托给共享的Web Worker?要么
  2. 有没有办法阻止所有applicationCache更新,直到用户特别想检查更新并按下一个按钮,通过applicationCache.update()启动更新?要么
  3. 还有其他方法可以减少检查更新所花费的时间吗?
  4. 应用程序缓存更新不应在后台异步运行吗?



编辑:清单文件上可能是一个精心构造的缓存控制头是答案吗?我会调查这个,但我希望有人可以给我更多关于这些更新的信息.谢谢.


UPDATE

好吧,我玩过标题,没有任何帮助.我开始赏金了.如果你能提供帮助,请做!

javascript html5 web-applications application-cache

5
推荐指数
1
解决办法
785
查看次数

超过localStorage配额(localStorage size!=文件下载大小)以及如何检查localStorage大小

我想不出一个好头衔,所以希望能做到.

我正在做的是创建一个离线HTML5 webapp."出于某些原因"我不希望将某些文件放在缓存清单中,而是希望将内容放在localStorage中.

所有测试均在Google Chrome for Mac/Mac OS 10.6.6中完成

我有4个.JSON文件,3,120,792大小完全是字节大小.首次访问(在线)应用程序时,我将这个JSON内容下拉并将其放在一个字符串变量中,比方说str.之前存储的JSON字符串,我所有的剥离\n\t,和更换\"',最大限度地减少字符串的长度.

以下是字符串长度(Chrome控制台中的str.length):

original str : 3,117,764 (this is a concatenation of the contents of the 4 JSON files)
reformatted JSON: 2,732,249 (not too shabby - should save me a few bytes)
Run Code Online (Sandbox Code Playgroud)

但是,现在当我尝试将此字符串存储在localStorage中时,我收到的错误是我已超出缓存大小(Error: QUOTA_EXCEEDED_ERR: DOM Exception 22).但是此页面没有其他缓存(我已手动删除了所有Google Chrome缓存文件).

为什么会这样?

存储在缓存中时字符串的大小是多少?

如何最大限度地减小此大小以充分利用localStorage?

编辑添加:我已尝试将字符串的1,000,000个字符保存到localStorage(localStorage.setItem('x',str.substr(1,1000000))中.当我在Chrome的缓存文件夹中检查localStorage文件大小时,它是2MB.这是一个sqlite数据库.看起来浏览器使用的是实际的localStorage数据库大小,而不是存储在其中的数据大小.这当然很糟糕,但可能是标准行为.我想你可以在localStorage中存储的最长的字符串是大约2,500,000个字符?

javascript caching local-storage

2
推荐指数
2
解决办法
1万
查看次数