node.js - 如何将数据从 BigQuery 移植到已部署在 Google App Engine 上的 ReactJS Webpack 应用程序中

标签 node.js google-app-engine google-bigquery kepler.gl

我已经成功地在 Google App Engine 上部署了一个基于 kepler.gl 的应用程序,其中包含一些示例数据(基于 vis academy 教程)。我希望能够从 Big Query 获取数据并将其作为源数据传递。

我尝试实现 nodejs-bigquery sample 中的示例,但无法弄清楚如何将结果传递到主 app.js 文件中。我是应用程序开发和 javascript 方面的绝对初学者,因此我们将非常感谢任何帮助。

这是我的主 app.js 文件的样子

import React, {Component} from 'react';
import {connect} from 'react-redux';
import AutoSizer from 'react-virtualized/dist/commonjs/AutoSizer';
import KeplerGl from 'kepler.gl';

// Kepler.gl actions
import {addDataToMap} from 'kepler.gl/actions';
// Kepler.gl Data processing APIs
import Processors from 'kepler.gl/processors';

// Sample data
//import data from './data/bq.js'

.... 

这是错误输出:

ERROR in ./~/https-proxy-agent/index.js
Module not found: Error: Can't resolve 'net' in '/Users/saroosh/code/GAE/node_modules/https-proxy-agent'
 @ ./~/https-proxy-agent/index.js 5:10-24
 @ ./~/teeny-request/build/src/index.js
 @ ./~/@google-cloud/common/build/src/util.js
 @ ./~/@google-cloud/common/build/src/index.js
 @ ./~/@google-cloud/bigquery/build/src/index.js
 @ ./src/data/bq.js
 @ ./src/app.js
 @ ./src/main.js

ERROR in ./~/https-proxy-agent/index.js
Module not found: Error: Can't resolve 'tls' in '/Users/saroosh/code/GAE/node_modules/https-proxy-agent'
 @ ./~/https-proxy-agent/index.js 6:10-24
 @ ./~/teeny-request/build/src/index.js
 @ ./~/@google-cloud/common/build/src/util.js
 @ ./~/@google-cloud/common/build/src/index.js
 @ ./~/@google-cloud/bigquery/build/src/index.js
 @ ./src/data/bq.js
 @ ./src/app.js
 @ ./src/main.js

最佳答案

这似乎是 webpack 的问题。我发现了一些与 webpack 集成相关的问题。我从 here 得到了一些解决方法您可以找到更多信息here .

至于解决方法,如果您使用 vis academy tutorial 中提供的 webpack.config.js ,试试这个:

替换 webpack.config.js 中的这部分:

node: {
    fs: 'empty'
  },

这样:

node: {
    fs: 'empty',
    net: 'empty',
    tls: 'empty',
  },

@tanohzana 提供的解决方案

关于node.js - 如何将数据从 BigQuery 移植到已部署在 Google App Engine 上的 ReactJS Webpack 应用程序中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56689507/

相关文章:

javascript - NodeJS 将函数分组到子类下

node.js - 从 Node 中的模块加载特定文件

google-app-engine - 电子邮件 API 授权发件人

sql - 从大查询中的特定数字开始查找序列

google-bigquery - 如果我在流式传输之前先删除表并先创建表,Google BigQuery 流式传输有时会失败

javascript - 尝试在 javascript 中使用该库时无法找到模块 'collections/dict'

node.js - 基于 Sequelize for postgres 中两列的自动增量

python - 如何将游戏数据导出到MySQL?

python - 有没有办法禁用 App Engine dev_appserver 上的内置截止日期?

error-handling - 如何解决BigQuery中的错误 “Dataset was not found in location US”?