为方便部分技术人员希望通过自行编写程序处理收款信息的需求。My18全自动收款系统自8.0版开始提供网络提交模式,可以直接将软件扫描到的收款记录数据发送到指定网址。
软件网络提交时有2种工作模式:正常模式、简易模式
(一)简易模式:
勾选”简易模式”后,软件直接明文发送收款记录信息到客户指定网址。
注意:软件只提交成功收款的记录。未支付的或转账失败的收款记录,软件是不扫描的。收款记录中备注的【附言】内容不为数字的,软件会自动将【附言】分配为0000,若未勾选”无备注提交”选项时则这类数据不提交。(Key1与key2参数只参与正常模式发送时的数据加密工作,简易模式下不用理会。)
①工作原理:
软件扫描到数据后会直接向客户自行编写的处理页面明文post发送并根据客户处理页面的返回值决定是否再次发送。如未得到正确的返回值则会重新向处理页面发送(防止因网络丢包等异常情况导致的丢单),直到获得到正确返回值为止。
②设置工具的配置
当您选择网络提交简易模式时,要如图所示勾选“网络提交”、“简易模式”,并在“测试网络”按钮前的文本框处要填写正确接收数据处理的网址,默认收款记录的备注中没有【附言】的数据不提交,勾选“无备注提交”后,无论收款记录中是否有备注【附言】,所有数据都将被提交至您指定的数据处理页面。
③处理页面的编写
Simp.asp和Simp.php是ASP和PHP的示例页面,是用来接收数据并在处理完成后回显返回值的,返回值内容为:<Cad-rc-ok> ,注意区分大小写,示例页面功能仅供参考,客户需根据自己实际业务需求编写。 此示例页面的功能是将转发来的数据写入text.txt和text1.txt文件。
(二)正常模式:
软件默认在此模式下工作, 为了保证数据的安全性和完整性该模式下软件不直接向客户编写的数据处理页面发送数据,而是发送到搭建的接收系统,然后再由接收系统将数据转发到客户编写的处理页面。
接收系统存在的意义?
接收系统源码加密,客户可以自行搭建到任意机器上,而软件到接收系统的数据传输是加密的,这样可以最大限度的在方便部署的情况下兼顾安全。由于接收系统是搭建在客户可控的机器上的,处理页面也是客户自行编写部署的,这就最大程度的保障了传输的私密性。必要时客户完全可以对自己的处理页面地址指定ip或限制端口连接来保证数据传输的安全。
①工作原理:
软件扫描到数据后会向接收系统发送经key1,key2参数加密后的收款数据,接收系统收到数据后会向客户自行编写的处理页面明文转发数据并根据返回值决定是否再次发送,如当次转发未获取到正确的返回值则会重新向处理页面发送(防止因网络丢包等异常情况导致的丢单),直到获得到正确返回值为止。
②所需环境及包含文件:
接收系统搭建环境为net4.0
首先我们来认识下接收系统包含的文件
我们提供的接收系统包含以下文件,
My18_index.aspx就是用来接收和处理软件提交过来的数据的页面。
App_Data文件夹里的『webdata.mdb』是保存接收到的所有收款记录的数据库
Web.config是配置文件
其中红框处的内容是保存提交数据的数据库路径,是可以自行修改的。
蓝框处的内容就是要转发到的网址,这个页面是需要自己编写的。这里我们提供了示例页面simp.asp和simp.php
绿框处是加密密钥,与设置工具中的key1,key2值对应.
为保证安全性,接收系统除示例页面simp.asp、simp.php和配置文件web.config外都是加密文件。
③使用“正常模式”时如何搭建接收系统
第1步:接收系统的搭建(使用简易模式时忽略此段内容)
IIS『文档』选项卡中『启用默认内容文档』勾选,且将my18_index.aspx设为首页
ASP.NET版本要选择4.0,若是win2008系统应安装AccessDatabaseEngine.exe,且装完一定要重启.
第2步:设置工具的配置
当您选择网络提交正常模式时,要勾选“网络提交”、但不要勾选“简易模式”,并在“测试网络”按钮前的文本框处要填写正确接收系统的网址,默认收款记录的备注中没有【附言】的数据不提交,勾选“无备注提交”后,无论收款记录中是否有备注【附言】,所有数据都将被提交至接收系统页面。
④处理页面的编写
Simp.asp和Simp.php是ASP和PHP的示例页面,是用来接收数据并在处理完成后回显返回值的,返回值内容为:<Cad-rc-ok> ,注意区分大小写,示例页面功能仅供参考,客户需根据自己实际业务需求编写。&n, bsp;此示例页面的功能是将转发来的数据写入text.txt和text1.txt文件。
(三)注意事项:
1. 编写时注意编码转换,转发过来的数据为UTF-8且包含URL编码。
2. 处理页面成功处理数据后必须返回<Cad-rc-ok>,否则返回false,因为软件只有收到了该条记录的成功返回值后才不再发送。回显返回值时不得夹杂其他内容。
3. 处理页面应验证收款数据是否已存在,以防因意外情况导致实际已处理完成但未正常输出返回值的情况。
(四)系统转发参数如下:
MY18DT=到帐时间
MY18oid=支付宝/财付通/网银 交易流水号(长度≥32)
MY18JYF=打款人
MY18FY=附言内容(允许空值)
MY18M=打款金额
MY18HF=手续费
MY18SKR=收款人(允许空值,因为不是所有的网银都显示收款人这一信息)
MY18PT=支付方式
可通过request("参数名")获取转发来的数据,例如到帐时间request("MY18DT")