Tag: function

angular/离子处理成功200作为一个错误

我使用离子与谷歌云function,当我将数据返回到我的应用程序angular度默认为处理它作为一个错误。 这里是我使用节点callback我的云function:我已经尝试添加大括号到有效载荷,但它没有帮助。 function (error, response, body) { let payload = parser.toJson(body, parserOptions); console.log(payload) res.status(200).send(payload); } 在控制台的日志中回复我得到: { ResponseCode: '0', referenceID: '22072017152436718488608295', ResponseMessage: 'SUCCESS', paymentURL: 'url', net_amount: '0', invoiceNumber: '0', status: '200' } 我期望在Angular / Ionic代码中收到哪些数据。 在邮递员testing这个工作也是。 Angular Code: return this.http.post('/api', body, headers) .map(res => res.json()) .subscribe( data => { console.log('Success') console.log(data) }, err => { […]

如何更改Firebase中的body parser限制?

我试图代理一个file upload到firebase云function不暴露我们的APIurl。 看起来像Firebase正在使用Body-parser来parsing请求中的主体,但默认情况下它被限制为100kb。 我试过这个: var bodyParser = require('body-parser'); app.use(bodyParser.json({limit: '50mb'})); app.use(bodyParser.urlencoded({limit: '50mb', extended: true})); var bodyParser = require('body-parser'); app.use(bodyParser.json({limit: '50mb'})); app.use(bodyParser.urlencoded({limit: '50mb', extended: true})); 但它似乎没有使用bodyParser。 它使用embedded到Firebase框架中的私人内容。 有没有办法改变它的限制? 这是我得到的: 在getRawBody(/ usr / local / lib / lib)下,blockquote错误:{error:请求实体在readStream上太大(/usr/local/lib/node_modules/firebase-tools/node_modules/raw-body/index.js:196:17) (/usr/local/lib/node_modules/firebase-tools/node_modules/body-parser/lib/read.js:76:node_modules / firebase-tools / node_modules / raw-body / index.js:106:12) 3)在urlecodedParser(/usr/local/lib/node_modules/firebase-tools/node_modules/body-parser/lib/types/urlencoded.js:115:5)在Layer.handle [作为handle_request](/ usr / local / lib / node_modules / […]

Google Cloud函数中APIdevise的最佳方法?

最终的期望结果是资源利用率较低的性能更高的系统。 我想连接一个SQL数据库云function,并承载一个pf api的。 这里有两个select… 备选scheme:我们将每个API作为独立的云function托pipe。 const functions = require('firebase-functions'); exports.helloFunc1 = functions.https.onRequest(function (request, response){ response.send("Hello from Func1!"); }); exports.helloFunc2 = functions.https.onRequest(function (request, response){ response.send("Hello from Func2!"); }); 备选scheme二:我们主持一个具有内部路由的云端function。 const functions = require('firebase-functions'); const express = require('express'); const router = new express.Router(); var app = express(); var helloFunc1 = function (request, response){ // After some DB […]

如何从Cloud Function获取Firebase项目名称或ID

我正在使用云function,并希望从我的一个Javascript服务器文件中获取项目名称。 我知道价值存储在.firebaserc,但我不认为该文件在服务器上可用,对不对? 我想要做这样的事情: const functions = require('firebase-functions'); const admin = require('firebase-admin'); admin.getProjectName(); // or getProjectID() 要么 functions.getProjectName();

使用来自Firebase实时触发器function的其他参考值

您好我开始添加一些后端逻辑到我的Android应用程序使用的Firebase函数我想使用一些不同的事件数据值的值 exports.makeUppercase = functions.database.ref('path') .onWrite(event => { const original = event.data.val(); //I want to use value like this. const other_val= root.database.ref('path').val(); console.log('email', "firms", original); const uppercase = original.toUpperCase(); return event.data.ref.parent.child('uppercase').set(uppercase); }); 我想使用other_valwith事件数据,但到目前为止,我只是使用事件数据参考,但我可以上升或下降数据库event.data.ref使用更多的父母或孩子。 我该如何解决? 编辑:我试图学习正确的方式来做到这一点感谢@davidtaubmann的答案。 exports.makeUppercase = functions.database.ref('/nonVerifiedUsers/{email}') .onWrite(event => { var changed= ""; // You can use ref parameter like this var param=event.params.email; admin.database().ref('/uppercase').once('value').then(function(snap){ changed=snap.val(); […]

Firebase和第三方API的云端函数

我的问题是使用一个API以及Firebase函数,所讨论的API是Coinbase,我使用带有节点的API,如果我使用节点命令在terminal中testing它的工作方式,但是当我将它与Firebase函数一起使用时根本不工作,我一直在试图解决这个问题近一个星期了。 代码如下> var functions = require('firebase-functions'); var Client = require('coinbase').Client; var client = new Client({ "apiKey": "xxxxxxxxxxxx", "apiSecret": "xxxxxxxxxxxxxxxxxxxxxxx" }); exports.helloWorld = functions.https.onRequest((request, response) => { this.client.getAccounts({}, function(err, accounts) { if(accounts){ response.send(accounts); }else{ response.send(err); } }); }); 错误: https : //us-central1-investimentos-b7406.cloudfunctions.net/helloWorld Coinbase API: https : //developers.coinbase.com/docs/wallet/guides/bitcoin-wallet

Cloud Functions和Nodejs中的firebase.database.refpath语法

// cloud functions exports.listenOnWrite = functions.database.ref('/foo/{id}').onWrite(event => { console.log("did match…."); }) 匹配例如:/ foo / 123123和/ foo / jk3489 // node.js function startLitener() { firebase.database().ref("/foo/{id}").on('child_added', function (postSnapshot) { console.log("did match…."); }); }; 不匹配任何东西 1)问题 我理解refpath中非常舒适的{}语法仅适用于云function。 还是我错过了什么? 2)问题 我如何在nodejs服务器上编写ref('/foo/{id}') ?

从云端function获取随机维基页面

我试图通过Google Cloud Functions在他们的API上获得一个随机的Wikipedia页面。 维基百科API工作正常。 这是我的要求: https://de.wikipedia.org/w/api.php?action=query&format=json&generator=random 对于testing,您可以将格式更改为jsonfm,以查看浏览器中的结果。 点击这里 👍。 但是,即使在请求完全成功之前,我的函数似乎也被破坏了。 如果我想parsing数据(或者即使我想logging这些数据),我得到了一个 SyntaxError: Unexpected end of json 日志看起来像(例如)(不,我没有自己削减): DATA:ue ||“}”query“:{”pages“:{”2855038“:{”pageid“:2855038,”ns“:0,”title“:”Thomas Fischer 当然,这不是一个有效的JSON,不能被parsing。 不pipe这是我的function: exports.randomWikiPage = function getRandomWikiPage (req, res) { const httpsOptions = { host: "de.wikipedia.org", path: "/w/api.php?action=query&format=json&generator=random" }; const https = require('https'); https.request(httpsOptions, function(httpsRes) { console.log('STATUS: ' + httpsRes.statusCode) console.log('HEADERS: ' + JSON.stringify(httpsRes.headers)) httpsRes.setEncoding('utf8') httpsRes.on('data', […]

JavaScript的术语:我(调用/调用/执行)的function?

与function有关的动词有没有区别? 起初,我认为他们的意思是相同的,人们可以互换使用。 现在,我不是100%肯定的。 我觉得在尝试理解与代码相关的内容时,有可能会丢失重要的信息。 我还记下了很多笔记,而且我一直没有考虑如何使用这些术语。 如果我回答一个关于三者之间差异的百万美元的问题,我会说: 'function was invoked ' – function已被触发,但不一定返回结果 'function已执行 ' – function已触发并返回结果 '函数被调用 ' – 函数已经在函数内被触发(因此我们使用术语“callback”) 以上只是我的直觉。 如果有人要求我逐行解释我的一些代码,我不知道用哪个动词来形容它。 我可能会随机在三者之间感到聪明。 我试图研究这个术语,但找不到任何相关的信息。 非常感谢。

Google Cloud Function Node.js Firebase Url

我有一个Android应用程序,我可以通过http格式从我的设备发送推送通知,但现在我想写一个节点,我希望在特定的date和时间安排推送通知,有人请帮助我,我是长期以来一直陷在这个过程中 这是我的节点; const functions = require('firebase-functions'); const admin = require('firebase-admin'); admin.initializeApp(functions.config().firebase); exports.sendNotification = functions.https.onRequest((req, res) => { const to = req.query.to; const title = req.query.title; const body = req.query.body; var payload; if (body != undefined && body !== '') { payload = { notification: { title: title, body: body } }; } else { payload […]