DPS支付网关接口(paymentexpress.com)

本文详细介绍了DPS支付接口的两种主要模式:DPSHosted和MerchantHosted。前者包括PXAccess和PXPay两种API接口,后者则提供PXPost、DPSAuthSSL及Webservice三种API接口。此外还介绍了Webservice的调用示例及3DSecure认证API的使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

paymentexpress.com为Direct Payment Solutions Ltd.所有。所以网站总是到处引用DPS,实为公司名称缩写。

总的来说DPS支付接口有两种方式:
[size=medium][b]I. DPS Hosted[/b][/size]
简单讲就是当在商家下订单支付时,跳转到DPS的网页,支付成功后返回商家网站,非常类似Paypal Standard支付方法。
对于此种方式,DPS提供了两种API接口:
[b]1. PX Access
2. PX Pay[/b]
PX Pay是平台独立的,最多地被使用。

[size=medium][b]II. Merchant Hosted[/b][/size]
当用户在商家下订单支付时,输入信用卡号码并提交,不离开商家站点就能完成支付过程。
对于此种方式,DPS提供了3种API接口:
[b]1. PXPost
2. DPSAuth SSL
3. Web service[/b]
PX Post是平台独立的,最多地被使用。Web service是最近新增的,所以渐渐可能替代PX Post,另外Web service提供了更加丰富的API.
webservice的基本调用如此简单,请看下例

<?php
$soapClient = new SoapClient('https://www.paymentexpress.com/WSTest/PXWS.asmx?WSDL');
$transactionDetails = array(
'amount'=>'12.35',
'dateExpiry'=>'1212',
'txnType' => 'Purchase',
'txnRef' => '4000000089',
'cardHolderName' => 'Test User',
'cardNumber'=>'4111111111111111',
'inputCurrency'=>'AUD',
);
$param=array(
'postUsername' => 'TestAccount',
'postPassword' => 'TestPassword',
'transactionDetails' => $transactionDetails,
);
$out = $soapClient->SubmitTransaction($param);
echo '<pre>';
var_dump($out);
echo '</pre>';

网站也提供了3D Secure的认证API(Web service), 为了使用此项机制,首先需要使你的Credit Card开通3D Secure,然后才能使用该API.

在DPS接口集成到自己的系统过程中,有数个账号需要建立用于测试
1. 进入网站申请开发账号(通常数小时数日人工审核)
2. PX Pay的对应开发账号的Key申请(电话或邮件).PX Pay支付成功的订单可以用前面网站申请的账号登陆网站查看。
3. PX Post/Web service账号和密码申请(电话或邮件).

对于测试过程中使用到的卡号和类型,请参照FAQ [url]http://www.paymentexpress.com/knowledge_base/faq/developer_faq.html[/url]
[quote]... test card
4111111111111111 for Visa,
5431111111111111 for MasterCard,
371111111111114 for Amex and
36000000000008 for Diners.
These can be used with any current expiry, and are suitable only for DPS test accounts.[/quote]
### Swin Transformer 论文精读:Hierarchical Vision Transformer Using Shifted Windows Swin Transformer 是一种基于视觉的分层 Transformer 模型,其核心创新在于通过 **Shifted Window-based Self-Attention** 实现了线性计算复杂度,同时能够生成多尺度特征表示。这种方法在图像分类、目标检测和语义分割等任务中取得了显著的性能提升 [^2]。 #### 核心架构概述 Swin Transformer 的整体结构分为多个阶段(Stage),每个阶段包含多个 Swin Transformer Block。这些块使用 **窗口化自注意力机制** 和 **移位窗口策略** 来实现高效计算并捕捉长距离依赖关系。 - **分层特征提取** 类似于传统卷积神经网络(如 ResNet),Swin Transformer 采用分层设计来逐步降低空间分辨率并增加通道维度。这种设计允许模型从局部到全局地构建特征表示。 - **窗口划分与移位窗口机制** 在每个 Swin Transformer Block 中,输入特征图被划分为不重叠的窗口,并在这些窗口内执行自注意力计算。为了增强跨窗口的信息交互,在下一个 Block 中对窗口进行移位操作(Shifted Windows)。这种方式既减少了计算量,又保持了模型对全局信息的感知能力 [^1]。 ```python # 窗口划分伪代码示例 def window_partition(x, window_size): B, H, W, C = x.shape # 将图像划分为多个窗口 x = tf.reshape(x, shape=[B, H // window_size, window_size, W // window_size, window_size, C]) windows = tf.transpose(x, perm=[0, 1, 3, 2, 4, 5]) return tf.reshape(windows, shape=[-1, window_size, window_size, C]) # 移位窗口伪代码 def shifted_window_attention(x, window_size, shift_size): B, H, W, C = x.shape # 对特征图进行滚动操作以实现窗口移位 x = tf.roll(x, shift=(-shift_size, -shift_size), axis=(1, 2)) return window_partition(x, window_size) ``` #### 自注意力机制优化 传统的 Vision Transformer(ViT)在整个图像上应用自注意力机制,导致计算复杂度为 $O(n^2)$,其中 $n$ 是图像块的数量。而 Swin Transformer 通过将注意力限制在局部窗口内,将复杂度降低到 $O(n)$,使其适用于高分辨率图像处理 [^4]。 此外,移位窗口机制确保了相邻窗口之间的信息流动,从而避免了局部注意力带来的信息隔离问题。这种设计使得 Swin Transformer 能够在保持计算效率的同时实现全局建模能力。 #### 实验结果与性能优势 Swin Transformer 在多个视觉任务中表现出色: - **ImageNet 分类任务**:Swin-Tiny、Swin-Small、Swin-Base 和 Swin-Large 四种变体均在 ImageNet-1K 上实现了优于其他 Transformer 主干网络的 Top-1 准确率。 - **COCO 目标检测**:在 COCO 数据集上,Swin Transformer 在 Faster R-CNN 框架下达到了 SOTA 性能,mAP 超过之前的最佳方法。 - **ADE20K 语义分割**:在 ADE20K 数据集上,Swin Transformer 作为编码器也取得了领先的 mIoU 指标 [^2]。 #### 消融实验分析 论文还进行了详细的消融研究,验证了以下几个关键组件的有效性: - **窗口大小的影响**:较大的窗口有助于捕捉更广泛的上下文,但会增加计算开销。 - **移位窗口的重要性**:实验证明,移位机制可以显著提升模型性能,尤其是在长距离依赖任务中。 - **不同层级的设计**:通过对比不同层级深度和通道配置,论文展示了如何平衡精度与效率 [^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值