【发布时间】:2018-02-06 22:20:29
【问题描述】:
问题
当我在谷歌云函数中包含任何“要求”语句时,我收到警告:“函数处于活动状态,但最后一次部署失败”
解决方案?
我很确定我需要在 package.json 文件中包含依赖项,但我不知道要包含哪些依赖项,也不知道如何编写。
背景
我用 Java 构建了一个 android 应用程序,我正在尝试集成条带支付。 Stripe 要求我让服务器处理请求,但我正在尝试使用谷歌云功能(所以我不必支付/管理服务器)。
我正在尝试遵循 this 的示例,但它不起作用。作者没有包含 package.json 文件,我不确定要在其中放置哪些依赖项。我以前从未写过java脚本,我的背景是python、c++、java。
我查看了来自 google 的 this 教程以及 the google docs on writing cloud functions。我也搜索过 S.O.并且找不到解决方案。问题可能是我不是 javascript 开发人员。我正在尝试插入并播放其他人的代码,以使我的 android (java) 应用程序的一个特定部分正常工作。
疑难解答
为了解决问题,我使用了 google 提供的“helloWorld”示例。 Hello World 功能可自行查找。如果我在顶部添加这三个 require 语句中的任何一个,我会收到警告:“功能处于活动状态,但最后一次部署失败”
代码
-- index.js
var app = require('express')();
var http = require('http').Server(app);
var stripe = require('stripe')(
"your_stripe_key"
);
var bodyParser = require('body-parser');
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
//initiate a one-off charge for a customer
exports.chargeCustomer = app.get(".../charge/:customerid/:token/:amount", function chargeCustomer (req,res){
stripe.charges.create({
customer: req.params.customerid,
source: req.params.token,
currency: 'usd',
amount:req.params.amount
},function(err, charge) {
if(err) {
return res.send(JSON.stringify(err));
}
res.send(JSON.stringify(charge));
});
});
-- 包.json
{
"name": "sample-http",
"version": "0.0.1"
}
注意事项
如果您知道我做错了什么,请记住我从未编写过 javascript。我不认为我在问一个重复的问题,我已经搜索过了,但答案可能在另一个问题中,我只是不理解它,因为我从未编写过 javascript。
【问题讨论】:
-
index是否可以使用所有必需的模块?
标签: javascript require google-cloud-functions package.json