【发布时间】:2021-12-30 19:49:31
【问题描述】:
我正在使用带有 Plaid 集成的 iOS 应用程序来验证资产。
我无法让该死的链接令牌创建工作...我收到 200 响应,但令牌只有 NULL
这是云功能
const functions = require("firebase-functions");
//import { Configuration, PlaidApi, PlaidEnvironments } from "plaid";
const { Configuration, PlaidApi, PlaidEnvironments } = require("plaid");
exports.createPlaidLinkToken = functions.https.onCall(async (data, context) => {
const customerId = context.auth.uid;
//new instance version
const configuration = new Configuration({
basePath: PlaidEnvironments.development,
baseOptions: {
headers: {
"PLAID-CLIENT-ID": functions.config().plaid.client_id,
"PLAID-SECRET": functions.config().plaid.secret,
},
},
});
const plaidClient = new PlaidApi(configuration);
//call the createLinkToken METHOD of tge plaidClient instance!
return plaidClient
.linkTokenCreate({
user: {
client_user_id: customerId,
},
client_name: "Reny",
products: ["auth"],
country_codes: ["US"],
language: "en",
})
.then((apiResponse) => {
const linkToken = apiResponse.link_token;
return linkToken;
})
.catch((err) => {
console.log(err);
throw new functions.https.HttpsError(
"internal",
" Unable to create plaid link token: " + err
);
});
});
【问题讨论】:
-
您能否提供对 /link/token/create 请求的响应正文?
-
我刚刚用邮递员重新测试,它可以工作。我使用development.plaid.com/link/token/create { "expiration": "2022-01-03T01:55:42Z", "link_token": "link-development-31f73392-4a4b-4539-9740-ccb458fa1eb4", "request_id": "kVTAQprXkdNNYAi" }
-
但它不适用于我正在使用的 npm plaid 代码npmjs.com/package/plaid
-
如果控制台直接在云函数中记录 apiResponse 会发生什么?我怀疑问题是你的函数返回
apiResponse.link_token而不是apiResponse.data.link_token -
bingo!,@ToddKerpelman 我使用了 apiResponse.data.link_token 并且成功了!,一万亿谢谢!
标签: ios google-cloud-functions plaid