2016-09-16 56 views
1

我使用DotNetKit 1.2.6.5和SagePayIntegration.Validation()被拒绝使用新的。网上域的客户电子邮件:与客户的电子邮件被拒绝

(如[email protected]) CustomerEMail无效。

这是固定的1.2.6.7或为SagePay.IntegrationKit.DotNet.dll提供源代码的地方,所以我可以修复它?

回答

1

尽管可以访问源代码(非常感谢@DavidG),但SagePay支持已确认实际的网关不支持所有这些新域 - 所以即使我修改了DotNetKit,它仍然会被网关拒绝。

SagePay支持是非常有益的,但最终

” ...电子邮件域[email protected]目前还不支持我们的网关。 我们连续运行发展冲刺,虽然也有一些 域我们可能还没有支持,我们期待在未来的,依赖于 影响和需求......”

+1

哦,我的,这有点疯狂。我想这意味着我不能使用我的公共电子邮件地址来订购任何东西......我不明白他们为什么会限制域名。 – DavidG

0

的SagePay集成套件使用这个正则表达式验证电子邮件地址:

[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+(?:[a-zA-Z]{2,4})\b 

这也不幸不允许超长的顶级域名。幸运的是,我拥有该套件的源代码,并且已将其添加到我的GitHub帐户(以及一个错误修复程序,这就是为什么我必须首先获取它,因为SagePay没有更新它)。你可以在这里找到它:

https://github.com/WiredUK/SagePay.IntegrationKit

而且你需要编辑正则表达式是这样的文件:

https://github.com/WiredUK/SagePay.IntegrationKit/blob/801f61cf965c391a98a025aa632949719084cef0/ApiRegex.cs

有关信息,您需要从编辑表达式的最后部分2,4(在TLD中匹配2至4个字符)以允许更多,例如2,30

编辑:而只是因为我可以,我opened an issue and fixed it

+0

太棒了,我就来看看... –

+0

大,希望它为你工作。我想知道是谁低估了这个,奇怪! – DavidG

+0

你好,我觉得这很奇怪。顺便说一句:这个来源是否基于1.2.6.7? –

相关问题