Tag: 谷歌应用程序内引擎

Google应用引擎:仅在POST请求中使用502 Bad Gateway

所以我在GAE上部署了一个nodeJS脚本,每当我遇到一个POST端点时,我得到一个502错误的网关错误。 端点是一个简单的服务,使用phantomJS获取页面的屏幕截图,并返回一个JSON,其中包含图像的base64表示。 做一个GET到这个端点工作正常,并返回一个健康的200响应,但是一旦我尝试一个POST请求,我得到: 502坏的网关 这是我的app.yaml : service: pdf-service # [START runtime] runtime: nodejs vm: true # [END runtime] threadsafe: yes # Temporary setting to keep gcloud from uploading node_modules skip_files: – ^node_modules$ handlers: – url: (.*)/ script: app.js secure: always 我的app.js脚本: 'use strict'; var express = require('express'); var app = express(); var cors = require('cors'); […]

在Google数据存储中应用filter后获取不同的项目

我一直在尝试使用以下查询在谷歌数据存储filter获取不同的项目: var query = datastore.createQuery('Todo') query.groupBy(['completed']); query.filter('title', 'abc'); query.run(function (err, items) { console.log(err, items) if (err) { callback(err); return; } callback(null, items.map(entityToTodo)); }); 我得到这个错误: { [Error: Precondition Failed] code: 412, metadata: Metadata { _internal_repr: {} } } undefined 有什么办法可以得到想要的结果?

使用Firebase FCM和Google App Engine发送通知

我遵循这个教程在Android设备之间发送通知。 我首次使用Google Cloud App Engine来运行Node进程,并且工作正常。 我收到通知,但每个请求都会收到两个通知,而不是每个通知一个。 有人能帮我找出原因吗? 一些观察 在App Engine仪表板上,我注意到有两个实例。 我试图删除一个,但不会被删除。 我确认问题不在firebase数据库中。 创buildnotificationRequest时,只会按预期创build一个节点。 但是两个通知可能通过节点脚本发送到设备。 这是我的节点脚本。 我通过在terminal上执行gcloud app deploy部署了这个脚本。 // [START app] 'use strict'; const express = require('express'); const app = express(); var firebase = require('firebase-admin'); var request = require('request'); // Your Firebase Cloud Messaging Server API key var API_KEY = [my_api_key]; // Fetch the service […]

使用Nodejs Google App Engine灵活的生产环境是否好?

请指教,在生产环境中为我的nodejs应用程序使用Google App Engine灵活环境是否好用

Nodejs mongostore在部署到GAE时创build数千个没有活动的会话

我已经将部署在node.js中的项目部署到GAE。 它使用mongostorepipe理会话: app.use(session({ secret: 'hakunamatata', store: new MongoStore({ mongooseConnection: mongoose.connection, autoRemove: 'interval', autoRemoveInterval: 10 }) })) 然而,当部署时,我的mongodb云数据库一直被打到增加存储会话的数量每秒多个ish。 什么是这样做,如何禁用它? 我不想填补我的512MB的免费mongodb存储开发.. 更新:现在它的会话中有超过一百万个文档

我可以浏览node.js项目的本地Google Datastore模拟器数据吗?

我有一个node.js项目,我正在部署到Google Compute Engine(而不是App Engine)。 我在本地使用数据存储模拟器。 我知道浏览本地数据存储模拟器数据的一个典型方法是使用dev_appserver.py并浏览到http:// localhost:8000 / datastore 但是,我没有使用本地开发服务器支持的运行时间之一。 有没有办法浏览本地数据存储模拟器数据时使用node.js?

将Node App部署到GAE:找不到模块'v8-compile-cache'

我尝试从GCP向Google App Engine部署“hello-World”节点示例。 我遵循快速入门页面上的所有步骤。 (克隆git仓库并在hello-world目录下运行npm install)在本地机器上,一切正常。 但每次我尝试运行gcloud应用程序部署我得到以下错误: module.js:471 throw err; ^ Error: Cannot find module 'v8-compile-cache' at Function.Module._resolveFilename (module.js:469:15) at Function.Module._load (module.js:417:25) at Module.require (module.js:497:17) at require (internal/module.js:20:19) at Object.<anonymous> (/nodejs/lib/node_modules/yarn/bin/yarn.js:25:3) at Module._compile (module.js:570:32) at Object.Module._extensions..js (module.js:579:10) at Module.load (module.js:487:32) at tryModuleLoad (module.js:446:12) at Function.Module._load (module.js:438:3) The command '/bin/sh -c yarn install –production || ((if […]

如何强制应用程序引擎上传node_modules

在我的项目中,我们正在使用与打字稿的nodejs谷歌云应用程序引擎应用程序开发。 我们有自己的构build机制,将ts文件编译为javascript,然后将它们收集到一个完整的可运行包中,以便我们不希望在google云上转发安装依赖关系,而是要将node_modules中的所有节点包上传到谷歌云。 但似乎谷歌云将始终忽略node_modules文件夹,并在部署过程中运行npm安装。 即使我试图从app.yaml中删除'skip_files: – ^ node_modules $',它不起作用,谷歌云总是会自行安装包。 有没有人有这个与node_modules一起部署节点应用程序的想法? 谢谢。

立即将Java和node.js项目上载到Google AppEngine

起初,我在AndroidStudio中设置了一个Java-Module,并将其上传到我的GoogleAppEngine服务器,效果很好。 (Android Studio – 构build – Google App Engine的部署模块) 现在我也想上传一个additioanl node.js服务器到同一个App Engine实例。 代码还应该访问在Java模块中创build的firebase数据库。 要上传node.js代码,我使用gcloud app deploy按照Google Googles QuickStart教程。 据我所知,这在后端flex环境中创build了一个新版本,禁用了我现有的Java代码。 所以我的问题是:我如何添加一个node.js服务器到我现有的实例? 我想我必须在Android Studio项目中做到这一点,但不是在gcloud app deploy 。 我怎样才能创build一个新的模块,使得node.js服务器在子文件夹上可用?

ApiError:禁止从本地Node.js应用程序访问App Engine数据存储

我有一个应用程序部署到App Engine,并希望从本地运行的Node.js应用程序访问该应用程序的数据存储。 我从Node的Hello World应用程序开始,尝试从已部署的应用程序的数据存储中检索一个实体,并按照本文档将其logging到控制台。 我的节点应用程序代码如下。 var express = require('express'); var gcloud = require('gcloud')({ projectId: 'myProjectId', keyFilename: __dirname + 'myKeyfile.json' }); var datastore = gcloud.datastore; var dataset = datastore.dataset(); var app = express(); app.get('/', function(req, res) { dataset.get(dataset.key(['Practice', 4392384]), function(err, entity) { if (err) { console.log("ERROR: " + err); } else { console.log("Practice entity: " + […]