是询问用户正在输入的信用卡类型更好,还是尝试使用正则表达式自动检测卡类型更好?
一些在线商家在下拉菜单中明确要求信用卡类型(Visa、Mastercard、Amex等)。而其他公司,包括亚马逊和GitHub,从不明确询问,而是依靠卡的属性来确定卡号。
依赖于卡类型自动检测的一个问题是信用卡正则表达式模式似乎需要随着时间的推移而更新。因此,这些正则表达式模式可能需要不断更新,以保持准确性并防止模式中的漏洞。
显式询问用户卡片类型和尝试自动检测卡片类型,哪个更好?还有其他的考虑因素吗?
发布于 2012-10-05 04:37:57
我已经做了20年的sfwr了,当我在网上下单的时候,我仍然会犯错误,错误地标记我的卡片。然后我得到一个错误,我给出的号码不是VISA卡。愚蠢的是,对于程序员来说,关注这一点是如此微不足道,而且永远不会向购物者显示这样的错误。
Paypal是唯一一个希望你在交易中提交卡类型的主要网关(我从来没有测试过如果你弄错了,他们是否会返回错误)。购物者可能会弄错卡,就像我有时会做的那样,但regexp永远不会。如果你是写任何主要门户,但贝宝无论如何,你要么不会被问到,或者你提供的答案将被忽略。
让你的购物者和你的商家对更快的结账感到满意,让结账过程变得最简单。它不会对交易产生实质性的影响。
仔细看看你的网关API -我打赌他们甚至不会问-他们可以通过查看卡号来判断。
发布于 2012-10-09 22:38:28
他们可能要求信用卡类型的原因之一是提供多部分文本输入。
适用于美国Express
XXXX - XXXX - XXXX - XXX的XXX - XXXX - XXXX - XXXX适用于其他公司的EnrouteXXXX - XXXX - XXXX - XXXX 有人可能会说,这种方式更有用,因为用户获得了与卡片匹配的视觉表示。此外,它可能用于提示在哪里可以找到CSC (因此,也可以从数字中推断出来)。
https://stackoverflow.com/questions/12728329
复制相似问题