gusucode.com > 爱美尔女性商城源码 1.0源码程序 > myAlipay/alipay_Notify.asp
<% '/*************************************************************************************************************** '* FileName: alipay_Notify.asp '* Description: 本Asp文件为Asp网店集成支付宝最新payto接口的示例代码,用于接收支付宝传递过来反馈通知(买家已付款请卖家发货、买家已收到货物交易结束、支付宝测试商户接口是否正常) '* Copyright: Copyright (c) 2005/7/24 '* Company: 淘宝网支付宝开发者论坛(http://dev.alipay.com)、易得网(http://www.ediom.net) '* Author: yeaome(小叶/叶老四) '* Version: Ver 2.0.0 '* Contact_Me: wangwang:yeaome ; QQ:38355624 ; MSN:yeaome@msn.com ; Mobile:13923706355/0755-84102932 '****************************************************************************************************************/ %> <!--#include file="./myAlipay.asp"--> <% '定义支付宝通知接口传递过来的参数 Dim msg_id,order_no,gross,buyer_email,buyer_name,buyer_address,buyer_zipcode,buyer_tel,buyer_mobile,action,s_date,ac Dim returnTxt '返回给支付宝通知接口的结果 Dim alipayNotifyURL '支付宝查询接口URL Dim myalipayEmail '商户的支付宝Email Dim myAlipayObj,ResponseTxt returnTxt = "Error" alipayNotifyURL = "http://notify.alipay.com/trade/notify_query.do?" myalipayEmail = "merchanttool@alipay.com" '创建一个myAlipay实例,并初始化myAlipay_Initialize() Set myAlipayObj = New myAlipay myAlipayObj.myAlipay_Initialize() '检查支付宝通知接口传递过来的参数是否合法 msg_id = DelStr(Request("msg_id")) order_no = DelStr(Request("order_no")) gross = DelStr(Request("gross")) buyer_email = DelStr(Request("buyer_email")) buyer_name = DelStr(Request("buyer_name")) buyer_address = DelStr(Request("buyer_address")) buyer_zipcode = DelStr(Request("buyer_zipcode")) buyer_tel = DelStr(Request("buyer_tel")) buyer_mobile = DelStr(Request("buyer_mobile")) action = DelStr(Request("action")) s_date = DelStr(Request("date")) ac = DelStr(Request("ac")) alipayNotifyURL = alipayNotifyURL & "msg_id=" & msg_id & "&email=" & myalipayEmail & "&order_no=" & order_no ResponseTxt = myAlipayObj.getHTTPURL(alipayNotifyURL) '事务处理流程如下: '1、支付宝通知接口请求该链接,并把各参数传递过来 '2、商户URL页面接收各参数并做简单处理后,调用支付宝查询接口,获得支付宝返回来的true或false结果,用于判断是否是支付宝发过来的请求 '3、根据支付宝返回来的true结果,进行后台数据处理 '4、处理完成后,把处理结果反馈给支付宝通知接口 '测试商户网站URL是否正确安装 If action = "test" Then returnTxt = "Y" '发货通知 ElseIf action = "sendOff" Then returnTxt = "N" If (ResponseTxt = "true") Or (ResponseTxt = "false") Then '更新数据在商户系统里的订单数据;如果已经发货,则将returnTxt置为Y,否则为N Else '非法数据,不做更新 End If '交易结束通知 ElseIf action = "checkOut" Then returnTxt = "Y" If (ResponseTxt = "true") Or (ResponseTxt = "false") Then '更新数据在商户系统里的订单数据;如果数据更新成功,则将returnTxt置为Y,否则为N Else '非法数据,不做更新 returnTxt = "N" End If End If Response.Write returnTxt '调用方法 DelStr(值),防止SQL注入攻击 Function DelStr(Str) If IsNull(Str) Or IsEmpty(Str) Then Str = "" End If DelStr = Replace(Str,";","") DelStr = Replace(DelStr,"'","") DelStr = Replace(DelStr,"&","") DelStr = Replace(DelStr," ","") DelStr = Replace(DelStr," ","") DelStr = Replace(DelStr,"%20","") DelStr = Replace(DelStr,"--","") DelStr = Replace(DelStr,"==","") DelStr = Replace(DelStr,"<","") DelStr = Replace(DelStr,">","") DelStr = Replace(DelStr,"%","") End Function %>