【问题标题】:Stripe Payments with parse server cloud code使用解析服务器云代码进行条纹支付
【发布时间】:2016-05-18 18:04:31
【问题描述】:

我的 main.js 中包含此代码:

var stripe = require("/cloud/stripe.js")("sk_test_*********");
//create customer
Parse.Cloud.define('createCustomer', function (req, res) {
  stripe.customers.create({
    description: req.params.fullName,
    source: req.params.token 
    //email: req.params.email
  }, function (err, customer) {
    // asynchronously called
    res.error("someting went wrong with creating a customer");
  });
});

将此代码推送到我的 Heroku 服务器后,日志显示:Error: Cannot find module '/cloud/stripe.js'

我也尝试过var stripe = require("stripe")("sk_test_*********");,但这会返回相同的错误。每当我尝试将此新模块添加到我的服务器时,整个服务器都会出现功能障碍。有什么解决方法?谢谢

【问题讨论】:

    标签: heroku stripe-payments parse-cloud-code parse-server


    【解决方案1】:

    您是否已将 Stripe 添加到您的节点项目的 package.json 文件的要求中?如果是这样,您应该能够使用术语 require('stripe') 来引用它,而不是您正在做的事情。

    【讨论】:

    • 不,我没有。我会在依赖项下添加它吗?以及如何?
    【解决方案2】:

    我会告诉你什么对我有用,我为此绞尽脑汁了一天。不要使用 Cloud Code 进行收费,而是在 index.js 上创建一个路由。 index.js 中的类似内容

    var stripe = require('stripe')('sk_test_****');
    var bodyParser = require('body-parser');
    app.use(bodyParser.urlencoded({
        extended: false
    }));
    app.post('/charge', function(req, res){
        var token = req.body.token;
        var amount = req.body.amount;
        stripe.charges.create({
            amount: amount,
            currency: 'usd',
            source: token,
        }, function(err, charge){
            if(err)
                // Error check
            else
                res.send('Payment successful!');
        }
    });
    

    我使用 jQuery post 来调用它,但您也可以使用表单。

    【讨论】:

    • “使用 jQuery post 调用它”的 iOS 代码是什么样的?我习惯调用云代码函数,但想将上面使用的代码添加到 index.js 中。谢谢!
    • 你会像使用 Alamofire 的其他 API 调用一样调用它
    猜你喜欢
    • 2015-05-13
    • 2016-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-18
    • 1970-01-01
    • 1970-01-01
    • 2017-02-20
    相关资源
    最近更新 更多