使用Node.js调用Yahoo钱包Fastpay API

简述

使用令牌进行充值,但没有为Node.js提供API库。
只有FastPay API库适用于PHP、Ruby和Python(截至2016年2月)。

因此,我参考了cURL的参数,在nodejs中创建了从API调用的实现。

准备

表达

    今回はexpressjsを使います。express-generatorでテンプレを作成します。
npm install express-generator -g

请求

    APIへPOSTするのに、requestモジュールを使います。
npm install request 

实施

FastPay.js的操作:是关于目标状态的实现(部分)。假设调用了router.post。

router.post('fastpay_complete', function (req, res, next) {
    var fastpayToken = req.body.fastpayToken;   // req.bodyで渡されてきます
    var amount = req.body.amount;  //  req.body.amount;
    var yUser = 'yahooFastpay.secret';  // fastpay secret keyです。
    var fastpayApiUrl = 'https://fastpay.yahooapis.jp/v1/charges';
    var fastpayApiProxy = '';  // プロキシがある場合は設定します

    request({
        method: 'POST',
        proxy: fastpayApiProxy,
        url: fastpayApiUrl,
        auth: {
            user: yUser,
            pass: ''
        },
        form: {
            amount: amount,
            card: fastpayToken,
            capture: false
        },
        json: true
    }, function (error, response) {
        if ( error ) {
            console.log(error);
        }
        else {
            if( resonse.body.error ){   // fastpay APIからのエラーの場合
                //HTTPステータスコード、Types、Codeなどを見て処理     
            }
            else{
                // 正常系処理
            }
        }
    });

});

总结

    • 上記のような実装で、NodeJs(Express)で使えるようになりました。

 

    間違いなどありましたらご指摘ください。
广告
将在 10 秒后关闭
bannerAds