自动检测信用卡类型与询问用户

Posted

技术标签:

【中文标题】自动检测信用卡类型与询问用户【英文标题】:Auto detect credit card type vs ask the user 【发布时间】:2012-09-25 13:14:46 【问题描述】:

询问用户输入的是什么类型的信用卡或尝试使用正则表达式自动检测卡类型更好?

一些在线商家会在下拉菜单中明确要求信用卡类型(Visa、Mastercard、Amex 等)。而其他人,包括 Amazon 和 GitHub,从不明确询问,而是依靠卡的属性来确定卡号。

依赖卡类型自动检测的一个问题是信用卡正则表达式模式似乎需要随着时间的推移而更新。因此,这些正则表达式模式可能需要不断更新以保持准确并防止模式中出现漏洞。

明确询问用户卡类型或尝试自动检测卡类型哪个更好?还有其他注意事项吗?

【问题讨论】:

【参考方案1】:

我做这种 sfwr 已经 20 年了,但我仍然有时会在网上下订单时犯错误标记我的卡的错误。然后我得到我给的号码不是VISA卡的错误。愚蠢的,当程序员关注这个并且从不向购物者显示这样的错误时是如此微不足道。

Paypal 是唯一一个希望您在交易中提交卡类型的主要网关(我从未测试过如果您弄错他们是否会返回错误)。购物者可能会像我有时那样弄错卡片,但正则表达式永远不会。如果您正在为任何主要网关而不是 Paypal 写作,您要么不会被询问,要么您提供的答案将被忽略。

让您的购物者和商家更轻松地完成结账流程,并享受更快的结账速度。它不会对交易产生重大影响。

仔细查看您的网关 API - 我敢打赌他们甚至没有询问 - 他们可以通过查看卡号来判断。

【讨论】:

你是正确的网关不问。但是,很多付款结账都会询问。所以我想知道为什么这么多人要求卡片类型? 一些网关曾经在 1990 年代询问过,但后来大多数都停止了,因为他们意识到这并没有为交易增加任何安全性。现在,我猜那些坚持询问或检查的程序员正在这样做,因为这是他们在许多网站上看到的。我们的推车从不询问,除非他们连接到认为它必须知道的少数几个网关之一,然后我们总是计算它 - 为什么在客户即将与您的客户花钱时让他们有机会制造嘘声? 【参考方案2】:

他们可能要求信用卡类型的原因之一是提供多部分文本输入。

XXX - XXXX - XXXX - XXXX 美国运通 XXXX - XXXX - XXXX - XXX 用于航路 XXXX - XXXX - XXXX - XXXX 其他人

有人可能会争辩说,这种方式更有用,因为用户可以获得与卡片匹配的视觉表示。此外,它可能是为了提示在哪里可以找到 CSC(不过,这也可以从数字中推断出来)。

【讨论】:

以上是关于自动检测信用卡类型与询问用户的主要内容,如果未能解决你的问题,请参考以下文章

Chrome 如何检测信用卡字段?

自动编码(Autoencoder)器异常检测(outlier detection)实战

使用 Picasa API 自动进行人脸检测以提取单个图像

未触发 Chrome 信用卡自动填充

Chrome 是不是更改了检测信用卡字段的方式? [复制]

检测用户最后一次点击/移动/键入/任何东西