Javascript request()函数,提供 ReferenceError: request 没有定义

基本上,我使用 javascript 从 Google Play 存储中获取数据:

1-请求

2-啦啦队

3-QueryString

我使用了来自 Github 的 Google Market API,它的使用要求如下:

var request   = require('request');
var cheerio   = require('cheerio');
var qs      = require('querystring');

但我得到了以下信息

参考错误: 请求没有被定义..。

所以,我没有要求在 javascript 中,这对我来说是新的,或者这是一些不寻常的东西。

686305 次浏览

RequreJS 是一个 JavaScript 文件和模块加载器 在浏览器中使用,但它可以在其他 JavaScript 环境中使用, 使用模块化的脚本加载程序,比如 RequreJS 提高代码的速度和质量。

IE 6+ .......... compatible ✔
Firefox 2+ ..... compatible ✔
Safari 3.2+ .... compatible ✔
Chrome 3+ ...... compatible ✔
Opera 10+ ...... compatible ✔

Http://requirejs.org/docs/download.html

将此添加到您的项目: https://requirejs.org/docs/release/2.3.5/minified/require.js

看看这个 http://requirejs.org/docs/api.html

默认情况下,require()不是客户端 javascript 中的有效函数。我建议您查看 需求,因为它扩展了客户端,为您提供了这个函数。

对我来说,问题是我没有把我引用的包的 webpack 构建模式设置为生产模式。显式地将其设置为“ build”: “ webpack —— mode production”修复了这个问题。

是的,need 是一个 Node.JS 函数,如果没有特定的需求,它不能在客户端脚本中工作。如果在编写 ElectronJS 代码时遇到此错误,请尝试以下操作:

在 BrowserWindow 声明中,添加以下 webPreferences 字段: 也就是说,不要写简单的 mainWindow = new BrowserWindow(),而是写

mainWindow = new BrowserWindow({
webPreferences: {
nodeIntegration: true
}
});

需求(https://requirejs.org/)是一个 AMD API。在应用程序中实现 monaco 编辑器时,我也遇到了类似的问题。这个脚本标签帮助了我:

<script src="https://requirejs.org/docs/release/2.3.5/minified/require.js"></script>

浏览器没有定义 need 方法,但 Node.js 有。使用 Browserify,您可以编写与在 Node 中使用请求相同的代码。

使用以下命令安装 Browserify

npm install -g browserify

现在,使用 Browserify 命令将所有必需的模块(如 main.js)递归地捆绑到一个名为 bundle.js 的文件中:

browserify main.js -o bundle.js

只要在 html 中添加一个标记,就可以完成了!

<script src="bundle.js"></script>

有关详细信息,请点击这里 https://www.npmjs.com/package/browserifyhttps://browserify.org/#install