【问题标题】:Google Cloud not working on Node.js谷歌云不适用于 Node.js
【发布时间】:2016-11-06 17:19:31
【问题描述】:

您好,感谢您帮助我。 我用 npm 安装 google-cloud,就像:

npm install --save google-cloud

然后我在我的代码中这样实现:

var gcloud =  require('google-cloud')({
  projectId: "czernitzki-148120",
  keyFilename: './service.json' 
});

我在具有Owner 访问权限的新服务帐户上创建了一个密钥,并将该文件放在 service.json 中。 service.json 与包含上述代码的文件位于同一目录中。在我启动应用程序后,当它从上面到达代码时它会爆炸

Error in ./~/google-cloud/~/protobufjs/dist/ProtoBuf.js
Module not found: [CaseSensitivePathsPlugin] `C:\Users\phili\Documents\GitHub\venos\node_modules\google-cloud\node_modules\ByteBuffer\dist\ByteBufferAB.js` does not match the corresponding path on disk `bytebuffer`.

 @ ./~/google-cloud/~/protobufjs/dist/ProtoBuf.js 25:8-39

Error in ./~/google-cloud/~/bytebuffer/dist/ByteBufferAB.js
Module not found: [CaseSensitivePathsPlugin] `C:\Users\phili\Documents\GitHub\venos\node_modules\google-cloud\node_modules\Long\dist\Long.js` does not match the corresponding path on disk `long`.

 @ ./~/google-cloud/~/bytebuffer/dist/ByteBufferAB.js 26:8-33

Error in ./~/google-cloud/~/JSONStream/index.js
Module parse failed: C:\Users\phili\Documents\GitHub\venos\node_modules\google-cloud\node_modules\JSONStream\index.js Unexpected character '#' (1:0)
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected character '#' (1:0)
 @ ./~/google-cloud/~/@google-cloud/prediction/src/model.js 25:17-38

Error in ./~/google-cloud/~/osenv/osenv.js
Module not found: 'child_process' in C:\Users\phili\Documents\GitHub\venos\node_modules\google-cloud\node_modules\osenv

 @ ./~/google-cloud/~/osenv/osenv.js 3:11-35

Error in ./~/google-cloud/~/uid-number/uid-number.js
Module not found: 'child_process' in C:\Users\phili\Documents\GitHub\venos\node_modules\google-cloud\node_modules\uid-number

 @ ./~/google-cloud/~/uid-number/uid-number.js 9:20-44

Error in ./~/google-cloud/~/node-pre-gyp/lib/info.js
Module not found: 'aws-sdk' in C:\Users\phili\Documents\GitHub\venos\node_modules\google-cloud\node_modules\node-pre-gyp\lib

 @ ./~/google-cloud/~/node-pre-gyp/lib/info.js 14:14-32

Error in ./~/google-cloud/~/node-pre-gyp/lib/publish.js
Module not found: 'aws-sdk' in C:\Users\phili\Documents\GitHub\venos\node_modules\google-cloud\node_modules\node-pre-gyp\lib

 @ ./~/google-cloud/~/node-pre-gyp/lib/publish.js 17:14-32

Error in ./~/google-cloud/~/node-pre-gyp/lib/testbinary.js
Module not found: 'child_process' in C:\Users\phili\Documents\GitHub\venos\node_modules\google-cloud\node_modules\node-pre-gyp\lib

 @ ./~/google-cloud/~/node-pre-gyp/lib/testbinary.js 10:9-33

Error in ./~/google-cloud/~/node-pre-gyp/lib/unpublish.js
Module not found: 'aws-sdk' in C:\Users\phili\Documents\GitHub\venos\node_modules\google-cloud\node_modules\node-pre-gyp\lib

 @ ./~/google-cloud/~/node-pre-gyp/lib/unpublish.js 15:14-32

Error in ./~/google-cloud/~/node-pre-gyp/lib/util/compile.js
Module not found: 'child_process' in C:\Users\phili\Documents\GitHub\venos\node_modules\google-cloud\node_modules\node-pre-gyp\lib\util

 @ ./~/google-cloud/~/node-pre-gyp/lib/util/compile.js 9:9-33

Error in ./~/google-cloud/~/google-auth-library/lib/auth/googleauth.js
Module not found: 'child_process' in C:\Users\phili\Documents\GitHub\venos\node_modules\google-cloud\node_modules\google-auth-library\lib\auth

 @ ./~/google-cloud/~/google-auth-library/lib/auth/googleauth.js 21:11-35

我正在使用带有 create-react-app 的 React。我已经在 Windows 和 Google Compute Engine 上对其进行了测试。它对两者都不起作用。

我按照https://github.com/GoogleCloudPlatform/google-cloud-nodehttps://googlecloudplatform.github.io/google-cloud-node/#/docs/storage/0.3.0/storage 的指南进行操作。

我该如何解决这个问题?

【问题讨论】:

    标签: node.js reactjs google-cloud-storage google-compute-engine google-cloud-platform


    【解决方案1】:

    google-cloud 是一个后端模块,应该与 Node.js 一起使用,而不是前端。

    正如this similar question 上的cmets 所述,请使用Google 的front-end api client

    【讨论】:

      【解决方案2】:

      你需要对找不到的模块进行 npm install ,如下所示:

      npm install aws-sdk
      

      关于CaseSensitivePathsPlugin的前两个错误,您可以在Case Sensitive Paths - Webpack Plugin找到解决方案

      【讨论】:

      • 我仍然收到此错误 Error in ./~/google-cloud/~/JSONStream/index.js 模块解析失败:C:\Users\phili\Documents\GitHub\venos\node_modules\google -cloud\node_modules\JSONStream\index.js 意外字符 '#' (1:0) 您可能需要适当的加载程序来处理此文件类型。 SyntaxError: Unexpected character '#' (1:0) @ ./~/google-cloud/~/@google-cloud/prediction/src/model.js 25:17-38 之后,尽管我安装了 child_process,但模块错误仍然存​​在手动
      • 请查看我关于 CaseSensitivePathsPlugin 的更新答案
      • 我认为这不是解决方案,因为 create-react-app 不允许此处提到 github.com/facebookincubator/create-react-app/issues/99 的 webpack 配置,而且安装后我仍然遇到模块错误。
      猜你喜欢
      • 2021-09-15
      • 2013-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-07
      • 1970-01-01
      • 2018-07-15
      • 2020-09-23
      相关资源
      最近更新 更多