我正在使用格式链接及其 custom integration ,到目前为止,我可以提取机构列表。这很棒,因为我不需要对机构列表进行硬编码,我可以为选择机构显示自定义模式对话框。
现在,下一步是让用户输入他们的凭据,以便通过public_token
回调获得metadata
和onSuccess
。 Plaid Link希望我使用所传入的所选机构的类型来呼叫linkHandler.open
,这会显示允许用户输入其凭据并确认的Plaid模式对话框。然后调用onSuccess
回调。
但是,如果我想让用户通过自定义模式输入用户名和密码,该怎么办?是否有像linkHandler.auth(userName, password)
之类的东西会以类似的方式调用onSuccess
,但是如果没有显示模态对话框,我就无法设置样式?
这是片段,但它基本上是从文档中复制粘贴的,所以没有惊喜:
let plaidLink = Plaid.create({
env: "tartan",
clientName: "",
key: "blahblahblah", // A correct public key.
product: "auth",
onLoad: () => {
console.debug("onLoad");
},
onSuccess: (publicToken, metadata) => {
console.debug("onSuccess");
},
onExit: () => {
console.debug("onExit");
}
});
// Don't want this!
//plaidLink.open("bofa");
// Want this, this is cool, but can I get the same for the credential dialog?
console.debug("institutions", plaidLink.institutions);
答案 0 :(得分:1)
我担心您正在寻找的功能目前不存在于Plaid Link中,并且很可能在不久的将来不会实现。这是因为Link专门用于处理每个银行相当复杂的流程和可能性范围。
对于像Wells Fargo
这样不需要MFA问题或答案的简单集成,您的提案可能会有效。
Plaid.auth('wells', userName, password)
但是对于Chase
和Bank of America
这两个都有各种MFA问题的机构来说,流程会复杂得多,而且只能通过一次方法调用来实现。
Plaid.auth('chase', userName, password)
Plaid.mfaDevice('chase', device)
Plaid.mfaCode('chase', code)
Plaid.handleMfaError('chase', error)
// ...
如果您确实希望向用户显示自定义模式,则可以选择构建自己的Plaid API实现。然而,Plaid Link会为您处理所有这些复杂性,我强烈建议您使用它来确保您的用户拥有出色的用户体验。 Plaid团队积极维护Link,因此它不断改进,并且经常发布新功能。