如何通过UrlFetchApp从Stripe API获取 "余额交易"。

问题描述 投票:0回答:1

我试图从Stripe API的 "余额交易对象 "与谷歌应用程序脚本应用程序的交易细节。我已经研究了另一个问题,让我的代码。

如何整合Stripe支付与谷歌应用脚本

而我已经阅读了以下Strip文档。

https:/stripe.comdocsapibalance_transactions。

我的代码是

function callStripe() {
  var url = "https://api.stripe.com/v1/balance_transactions";

  var params = {
    method: "GET",
    headers: {Authorization: "Basic " + Utilities.base64Encode("sk_test_XXX:")},
    payload: {id: "txn_1GryACFHk3f0sLjYo9FDDSM1", source: "ch_1GryABFHk3f0sLjY88wmWPFy"}
  };
  var res = UrlFetchApp.fetch(url, params);
  Logger.log(res.getContentText())
}

当我运行这个函数时,我得到了以下错误:

异常: 请求失败 https:/api.stripe.com。 返回代码404。Truncated server response: { "error": { "message": "Unrecognized request URL (POST: v1balance_transactions). 请看 https:/stripe.comdocs 或者我们可以在http... (使用muteHttpExceptions选项来检查完整的响应)(第59行,文件 "Stripe")

第59行是指 var res = UrlFetchApp.fetch(url, params);

google-apps-script urlfetch stripe-api
1个回答
1
投票

问题:如何整合Stripe...

Stripe API请求返回以下错误信息和 404 HTTP代码:"Unrecognized request URL (POST: v1balance_transactions)

"无法识别的请求URL(POST:v1balance_transactions)"

解决办法

移除 payload 高级参数 fetch() 方法选项。GET请求不能有一个body(这就是 payload 参数代表),但 UrlFetchApp 假设如果提供了payload,那么开发者就会真正尝试发出一个POST请求,并相应地改变方法。

参考文献

  1. Stripe API 参考
  2. GET方法 参考
  3. POST方法 参考
  4. fetch() 办法 参考
© www.soinside.com 2019 - 2024. All rights reserved.