首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >确定信用卡/借记卡类型

确定信用卡/借记卡类型
EN

Stack Overflow用户
提问于 2010-04-05 21:30:44
回答 4查看 3.5K关注 0票数 0

我正在为iPhone/iPod组合编写一个POS机应用程序,使用的硬件与Apple Stores::EasyPay中使用的硬件完全相同。

好的,我的障碍是:在uitext域中输入文本时,如何识别正在使用的信用卡类型?

我想我必须使用textField:shouldChangeCharactersInRange:replacementString:?但是,我已经有了一些想法,但我就是不能把它们放在一起形成代码:/

如有任何帮助,我们不胜感激!

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-04-05 21:38:07

我认为使用textField:shouldChangeCharactersInRange:replacementString:是正确的,因为每次用户更改文本字段中的内容时都会调用它。听起来您实际上并不想更改textField,而是想更改标识卡类型的另一个相关控件。当用户开始输入时,您可以使用Determine Credit Card Type By Number中描述的算法作为助手函数来相应地调整信用卡类型。

在输入字符串具有正确的字符数之前,您可能希望跳过完整的验证。

更新:,一个有趣的response in the same thread提到,实际上让用户选择信用卡类型是一个好主意,因为它至少向用户显示了您接受的信用卡列表。

票数 0
EN

Stack Overflow用户

发布于 2010-04-05 22:16:49

也许我不理解你的问题,但我认为你可以有一个BIN的名单(银行识别码)。例如,大多数以“4”开头的信用卡号码都是Visa。如果它们以“5”开头,那么它们很可能是万事达卡。这只是一个例子,你应该有一个完整的列表来识别每一张可能的卡片。不幸的是,一个完整的和更新的列表是付费的,但你可以有一个很好的列表来搜索网络上的免费信息,比如here

票数 1
EN

Stack Overflow用户

发布于 2010-04-05 22:19:04

您可以合理地尝试从卡号的前六位猜测卡类型,这称为Issuer Identification Number (IIN)

问题是,您将很难获得完整的list列表。即使是主要的收购者也很难保持最新的名单,因为发行人经常增加或删除范围。

幸运的是,卡的类型通常不重要。您应该能够执行长度和luhn check digit的基本验证,然后将卡提交给处理器进行验证和授权。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2578598

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档