Node.js 根据请求浏览捆绑包大小

Node.js 根据请求浏览捆绑包大小,node.js,browserify,Node.js,Browserify,我正试着用browserify使用图书馆。实际上,我希望在客户端和服务器上使用相同的代码进行API调用 我创建了一个只需要请求的小示例 test.js var r = require('request'); 然后我浏览它并用工具检查大小 结果bundle.js的大小几乎为1.5 MB。650 KB是请求本身,625 KB是browserify,156 KB是browserify核心 因此,问题是: 为什么browserify和browserify core包含在捆绑包中 有没有办法通过bro

我正试着用browserify使用图书馆。实际上,我希望在客户端和服务器上使用相同的代码进行API调用

我创建了一个只需要请求的小示例

test.js

var r = require('request');
然后我浏览它并用工具检查大小

结果bundle.js的大小几乎为1.5 MB。650 KB是请求本身,625 KB是browserify,156 KB是browserify核心

因此,问题是:

  • 为什么browserify和browserify core包含在捆绑包中
  • 有没有办法通过browserified请求来减少捆绑包的大小
    • Offt,请求量很大

      我对所有内容都进行了扫描,看起来请求迫使browserify需要一堆核心内容的原因是因为请求大量使用node.js API来为浏览器进行browserify。(如加密或进程),您可能只需要在后端使用(对于Oauth或普通库无法使用的东西)

      另外,我认为请求在客户端上不起作用,因此您需要另一个库—superagent/axios(两者都在服务器上起作用)

      或者,如果您只是简单地进行简单的http调用,则可以使用superagent/axios

      或者如果您在服务器上需要它,但想在客户机上忽略它(因为它在客户机上不起作用)

      或者如果你用的是大口喝的话

      bundler.ignore('request');
      

      谢谢,我会尝试这两种选择,但是,在客户端的要求工程刚刚好,唯一的问题是大小。
      {
        "name": "mypkg",
        "version": "1.2.3",
        "main": "main.js",
        "browser": {
          "request": false
        }
      }
      
      bundler.ignore('request');