使用 Stripe 验证信用卡

Validate credit card using Stripe

我正在编写一个 MVC 5 互联网应用程序并且正在使用 Stripe.net

这是用于使用 Javascript 验证信用卡的代码:

<script type="text/javascript" src="https://js.stripe.com/v2/"></script>
<script type="text/javascript">
    $('document').ready(function () {
        Stripe.setPublishableKey('pk_test_****');

        var isValid = Stripe.card.valid("4242 4242 4242 4242");
    });
</script>

有没有办法使用 C# 代码执行此操作?

提前致谢。

如果你想用 c# 代码来做,你必须做一个完整的网站 post 回来,或者你可以用 jQuery 异步调用你的控制器。在任何情况下,您都需要先在 C# 中实现卡片验证逻辑。我更喜欢写一个 Controller 并通过 jQuery.

访问它

您需要的是:

  1. 输入输出模型
  2. 控制器
  3. JavaScript/jQuery 在您看来实现。

看看这篇不错的 SO 文章:How to get data from ASP.NET MVC controller to jQuery dynamically?

我强烈建议不要将信用卡信息返回到您的服务器(除非您绝对必须这样做)。

当你将数据传回你的服务器时,你就进入了 PCI compliance 的世界 - 有很多工作要做,如果你做错了,你可能会被处以巨额罚款!

相反(就个人而言),我会使用 Stripe 的 javascript 来执行任何涉及敏感数据的检查(因为它使它远离您的服务器)

Stripe is PCI compliant - Level 1(最严格的检查)

所以我觉得使用它们很安全,然后通过使用它们的 javascript,它们可以让 you to also be PCI compliant

变得容易

上面 link 的总结:

  • 通过SSL/TLS
  • 沟通
  • 使用条带 javascript 个文件

他们还继续提到,一旦您开始接受付款,他们将帮助您确保您符合 PCI 标准。

对我来说这很容易 - 确保条纹完成所有艰苦的工作并使 load/sensitive 支付数据远离我的服务器!

但是,如果您需要将信用卡数据传回您的服务器,那么我将创建一个带有 Validate(GET) 方法的瘦 WebApi 控制器,查询字符串中带有车号参数,返回该卡号的有效性。

对于实际的 C# 代码,我会使用 Stripe library the guys from ServiceStack 在 Stack* 站点上创建并积极使用的代码