如何在Meteor中注销出站HTTP请求?

是否有一个meteor包,使我能做到这一点?

另外,有没有办法使用像global-request-logger这样的节点包来loggingMeteor应用的出站HTTPstream量?

是的,你可以在你的Meteor应用程序中使用npm模块。

这是包含它们的一种方法:

  1. 运行meteor add meteorhacks:npm
  2. 在项目根目录下创build一个packages.json文件。
  3. 在你的packages.json文件中插入{ "global-request-logger": "0.0.1" } ,以便将依赖关系列表到所需的npm模块global-request-logger
  4. 导入模块并初始化它:

 if (Meteor.isServer) { var globalLog = Meteor.npmRequire('global-request-logger'); globalLog.initialize(); } 

请注意,大多数npm模块提供了带有callback的asynchronousAPI。 不幸的是,你不能直接在你的Meteor应用程序中使用它们。 但是,您可以使用asynchronous实用程序弥补同步Meteor API和asynchronousnpm模块之间的差距

阅读更多有关meteorhacks:async的asynchronous实用程序 。


还有一个Meteor软件包,可以loggingHTTP请求。 这个软件包叫做meteor-log-requests ,由Evented Mind提供。 目前该软件包尚未发布,因此,如果要使用该软件包,则需要将其作为本地软件包进行安装。

这里是如何:

  1. 克隆meteor-log-requests GitHub存储库 。
  2. 如果不存在,则在项目根目录下创build一个packages目录。
  3. meteor-log-requests包复制到packages目录中。
  4. 通过meteor add log-requests添加包。

日志输出如下所示:

 I20150730-07:40:28.627(2) (log_requests.js:11) 127.0.0.1: GET / I20150730-07:40:28.795(2) (log_requests.js:11) 127.0.0.1: GET /20ae2c8d51b2507244e598844414ecdec2615ce3.css I20150730-07:40:28.800(2) (log_requests.js:11) 127.0.0.1: GET /packages/underscore.js?0a80a8623e1b40b5df5a05582f288ddd586eaa18 I20150730-07:40:28.812(2) (log_requests.js:11) 127.0.0.1: GET /packages/meteor.js?43b7958c1598803e94014f27f5f622b0bddc0aaf I20150730-07:40:28.848(2) (log_requests.js:11) 127.0.0.1: GET /packages/json.js?e22856eae714c681199eabc5c0710b904b125554 I20150730-07:40:28.852(2) (log_requests.js:11) 127.0.0.1: GET /packages/base64.js?1a63019243b73298e2964e6d4680f25bca657726 I20150730-07:40:28.857(2) (log_requests.js:11) 127.0.0.1: GET /packages/ejson.js?71047b64b5196348bdbe5fd5eea9ac97a5a9eb14 I20150730-07:40:28.946(2) (log_requests.js:11) 127.0.0.1: GET /packages/logging.js?07e201b648f16be8435a4f666156995eeda0c750 I20150730-07:40:28.966(2) (log_requests.js:11) 127.0.0.1: GET /packages/reload.js?da8974b7231dd8c0caccb5f322dcf97329d486d1 I20150730-07:40:28.970(2) (log_requests.js:11) 127.0.0.1: GET /packages/tracker.js?6d0890939291d9780f7e2607ee3af3e7f98a3d9c I20150730-07:40:28.986(2) (log_requests.js:11) 127.0.0.1: GET /packages/random.js?fe7b46080c91ce482acf6fc326afbc5b176f0502 I20150730-07:40:28.991(2) (log_requests.js:11) 127.0.0.1: GET /packages/retry.js?1f1dd2c35d300110fdaba51ce4473583bc3bf031 I20150730-07:40:28.997(2) (log_requests.js:11) 127.0.0.1: GET /packages/check.js?ac81167b8513b85b926c167bba423981b0c4cf9c I20150730-07:40:29.049(2) (log_requests.js:11) 127.0.0.1: GET /packages/id-map.js?9ea6eaae8d74693ce2505a858d9a5e60cf191298 I20150730-07:40:29.071(2) (log_requests.js:11) 127.0.0.1: GET /packages/ordered-dict.js?bf8af2f26c8d96bf8b2e6b407d3ed69f23c2cd37 I20150730-07:40:29.087(2) (log_requests.js:11) 127.0.0.1: GET /packages/geojson-utils.js?81b79d5cf96d00b4b7a28987debcffb665c17526 I20150730-07:40:29.102(2) (log_requests.js:11) 127.0.0.1: GET /packages/minimongo.js?af9eb9d7447544ca9b839a3dcf7ed2da2209b56c I20150730-07:40:29.109(2) (log_requests.js:11) 127.0.0.1: GET /packages/ddp.js?d1840d3ba04c65ffade261f362e26699b7509706 I20150730-07:40:29.115(2) (log_requests.js:11) 127.0.0.1: GET /packages/insecure.js?3dc9d4a2dad55999b5b15a447d57f3d5fb66b290 I20150730-07:40:29.170(2) (log_requests.js:11) 127.0.0.1: GET /packages/mongo.js?3cfe0c5981c197df33036a37574850f057e934a6 I20150730-07:40:29.182(2) (log_requests.js:11) 127.0.0.1: GET /packages/autoupdate.js?9a5ea03bf057815385bf569c7acc2c285c005491 I20150730-07:40:29.195(2) (log_requests.js:11) 127.0.0.1: GET /packages/meteor-platform.js?499a2f8522e25820b1153c69a92751ccaae507b3 I20150730-07:40:29.200(2) (log_requests.js:11) 127.0.0.1: GET /packages/autopublish.js?c3059a78bb200b171099fc4fa1a9345101790ddb I20150730-07:40:29.264(2) (log_requests.js:11) 127.0.0.1: GET /packages/log-requests.js?b9d6c721fd5a35edc5998a3296966595fe398910 I20150730-07:40:29.286(2) (log_requests.js:11) 127.0.0.1: GET /packages/jquery.js?dd8bac56f8fd3666d433d2285ae01e52597cc51a I20150730-07:40:29.301(2) (log_requests.js:11) 127.0.0.1: GET /packages/meteorhacks_npm.js?604e35d5437f43224cde2c1f9e5e9aace95a9a95 I20150730-07:40:29.304(2) (log_requests.js:11) 127.0.0.1: GET /packages/npm-container.js?c4195e22b5a0a7239a415a3d95b3b702c34fa28d I20150730-07:40:29.315(2) (log_requests.js:11) 127.0.0.1: GET /packages/webapp.js?e1be090051b82f046484dccc2de7d747e50c7328 I20150730-07:40:29.334(2) (log_requests.js:11) 127.0.0.1: GET /packages/deps.js?504589e1e9585dec8f9f6094e5a87b22de3783a1 I20150730-07:40:29.453(2) (log_requests.js:11) 127.0.0.1: GET /packages/reactive-dict.js?1cb61826ceb23464171f17c2191c7e04a9b91508 I20150730-07:40:29.466(2) (log_requests.js:11) 127.0.0.1: GET /packages/session.js?daf192a7244079d45db32a6fc26ebc3881fc1aa3 I20150730-07:40:29.469(2) (log_requests.js:11) 127.0.0.1: GET /packages/livedata.js?718526445deb4d9baacb6d92c551adea1d36c1e1 I20150730-07:40:29.473(2) (log_requests.js:11) 127.0.0.1: GET /packages/htmljs.js?567eb96d5d22631c03d6aca6afa4c42f0d1295f2 I20150730-07:40:29.476(2) (log_requests.js:11) 127.0.0.1: GET /packages/observe-sequence.js?0532a9dd76dd78f543eb4d79a1e429df186d8bde I20150730-07:40:29.482(2) (log_requests.js:11) 127.0.0.1: GET /packages/reactive-var.js?20335b7b37165980ddd9f23943b2e5b00aae1cc2 I20150730-07:40:29.553(2) (log_requests.js:11) 127.0.0.1: GET /packages/blaze.js?a5c324925e5f6e800a4c618d71caf2848b53bf51 I20150730-07:40:29.577(2) (log_requests.js:11) 127.0.0.1: GET /packages/ui.js?5a663333fd30f8fd913f110e0ef779e84f67c4b8 I20150730-07:40:29.586(2) (log_requests.js:11) 127.0.0.1: GET /packages/templating.js?376767bb0d2463b3b2615a1b90e77f6b22d39d7b I20150730-07:40:29.588(2) (log_requests.js:11) 127.0.0.1: GET /packages/spacebars.js?7bafbe05ec09b6bbb6a3b276537e4995ab298a2f I20150730-07:40:29.594(2) (log_requests.js:11) 127.0.0.1: GET /packages/launch-screen.js?495e58cf2465ba553324c68301cc62076b1fda1e I20150730-07:40:29.601(2) (log_requests.js:11) 127.0.0.1: GET /packages/meteorhacks_async.js?e687b9e863dc811fb3f313d1c6f237c7a2b1924b I20150730-07:40:29.662(2) (log_requests.js:11) 127.0.0.1: GET /packages/global-imports.js?28b039ee71a940b59e6694e1b2c8c7555daafc2d I20150730-07:40:29.669(2) (log_requests.js:11) 127.0.0.1: GET /template.meteor-log.js?a9c3a806e3371cc14c0e8d6f86b73b7bf2ef19d7 I20150730-07:40:29.675(2) (log_requests.js:11) 127.0.0.1: GET /meteor-log.js?a4f638a50228714016abbc604c243f65b057e771 

您也可能需要loggingDDP消息,因为DDP是用于客户端和服务器之间通信的协议(涉及发布,MongoDB操作和Meteor方法)。 要loggingDDP消息,您可以使用Meteor DDP分析仪 :

  1. 运行sudo npm install -g ddp-analyzer
  2. 通过terminal使用ddp-analyzer-proxy启动DDP分析器代理。
  3. 通过export DDP_DEFAULT_CONNECTION_URL=http://localhost:3030设置DDP默认连接export DDP_DEFAULT_CONNECTION_URL=http://localhost:3030
  4. 最后,用meteor启动你的应用程序。

日志将由您的terminal中的ddp-analyzer-proxy转储:

Meteor_DDP_Analyzer

阅读有关DDP的更多信息。