在Google Apps脚本中创建条纹令牌

时间:2020-10-22 16:47:15

标签: google-apps-script stripe-payments

我正在尝试使用GAS创建条纹令牌。我的代码在下面

  function createToken(){
  var url = "https://api.stripe.com/v1/tokens";
  
  var payload = {
  "Card": { 
  "Number" : "4242424242424242",
  "Exp_month" : "10",
  "Exp_year": "2021",
  "Cvc": "314",
  }
  };
  
  var options = {
    "method" : "post",
    "payload" : payload
  };

  options.headers = {    
    "Authorization" : "Basic " + Utilities.base64Encode("sk_test_4eC***7dc:")
    };
    
    var res = UrlFetchApp.fetch(url, options);
    Logger.log(res.getContentText())
  }

但是我不断收到以下错误,我想念什么?

[20-10-22 12:39:19:452 EDT]异常:https://api.stripe.com的请求失败,返回了代码400。

截断的服务器响应:{ “错误”:{ “ code”:“ parameter_missing”, “ doc_url”:“ https://stripe.com/docs/error-codes/parameter-missing”, “ message”:“您必须执行...(使用MutantHttpExceptions选项检查完整响应) 在createToken(代码:43:27)

1 个答案:

答案 0 :(得分:2)

当我看到the official document时,示例curl命令如下/

$ curl https://api.stripe.com/v1/tokens \
  -u sk_test_4eC39HqLyjWDarjtT1zdp7dc: \
  -d "card[number]"=4242424242424242 \
  -d "card[exp_month]"=10 \
  -d "card[exp_year]"=2021 \
  -d "card[cvc]"=314

将上面的示例curl转换为Google Apps脚本后,它如下所示。

示例脚本(Google Apps脚本):

var url = "https://api.stripe.com/v1/tokens";
var params = {
  method: "post",
  headers: {
    authorization: "Basic " + Utilities.base64Encode("sk_test_4eC39HqLyjWDarjtT1zdp7dc:")
  },
  payload: {
    "card[number]": "4242424242424242",
    "card[exp_month]": "10",
    "card[exp_year]": "2021",
    "card[cvc]": "314"
  }
};
var res = UrlFetchApp.fetch(url, params);
console.log(res.getContentText())

注意:

参考文献: