管理信息化网站转接支付宝解决方案

上传人:管****问 文档编号:137855285 上传时间:2020-07-12 格式:DOCX 页数:24 大小:57.24KB
返回 下载 相关 举报
管理信息化网站转接支付宝解决方案_第1页
第1页 / 共24页
管理信息化网站转接支付宝解决方案_第2页
第2页 / 共24页
管理信息化网站转接支付宝解决方案_第3页
第3页 / 共24页
管理信息化网站转接支付宝解决方案_第4页
第4页 / 共24页
管理信息化网站转接支付宝解决方案_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《管理信息化网站转接支付宝解决方案》由会员分享,可在线阅读,更多相关《管理信息化网站转接支付宝解决方案(24页珍藏版)》请在金锄头文库上搜索。

1、大型网上购物系统除了能让会员选择货到付款结账方式外,还应该提供一些更方便快捷的网上支付方式。如果网上商店没有足够的实力提供会员直接在网站中建立现金账户的功能,就可以将订单信息转接到支付宝,让会员从支付宝付款。当然就算会员可以在网站上建立自己的现金账户,提供支付宝支付功能也不失为另一种方便快捷的支付方式,这可以给客户提供更多可选的支付方式。首先,网上购物系统必须与支付宝公司签订合作协议,以确保从本购物网站上传到支付宝网站上的订单信息能被正确接收。当会员于购物网站上买下一系列商品并选择支付宝付款方式后,购物系统即将会员购物的订单信息转发到支付宝,网站页面也会转到支付宝的付款页面。此时,支付宝页面会

2、发送一个验证信息到本网站以确认支付宝正确收到订单信息。会员于支付宝网站付款完成后,网站页面会重新跳回本购物网站,同时支付宝会将已付款的订单信息发回本网站以便对本购物网站的数据库进行必要的修改操作。另外本网站还需要向支付宝网站发送一个返回信息,告知支付宝本系统已正确收到付款完毕的订单信息并且已经完成对数据的处理操作。向支付宝网站传送订单信息时主要参数的含义:gateway :支付接口service:识别是何接口实现何功能的表示seller_email:商家签约时的支付宝账号,即收款的支付宝账号key:安全校验码,与partner是一组partner:商户ID,合作伙伴IDsign_type:加密

3、类型 _input_charset:编码类型show_url:展示地址,即在支付宝页面时商品名称旁边的“详情”的链接地址out_trade_no:会员订单编号,订单编号必须在本系统中保持唯一subject:商品名称,也可称为订单名称,该接口并不是单一的只能买一样东西,可把一次支付当作一次下订单body:商品描述,即备注total_fee:商品价格,也可称为订单的总金额源码分析(C#):首先必须建立一个通知页面(Notify.aspx)和一个返回页面(Return.aspx)以接受并验证从支付宝返回的信息并对数据库中相应的订单信息做修改处理操作。Notify.aspx.cs代码 using Sy

4、stem;using System.Data;using System.Configuration;using System.Collections;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using System.Text;using System.Collections.Specialized;u

5、sing System.IO;using Gateway;/ / 创建该页面文件时,请留心该页面文件中无任何HTML代码及空格。/ 该页面称作“通知页”,是异步被支付宝服务器所调用。/ 当支付宝的订单状态改变时,支付宝服务器则会自动调用此页面,因此请做好自身网站订单信息与支付宝上的订单的同步工作/ public partial class Alipay_Notify : System.Web.UI.Page protected void Page_Load(object sender, EventArgs e) string alipayNotifyURL = https:/ /string

6、alipayNotifyURL = http:/ string partner = ; /partner合作伙伴id(必须填写) string key = ; /partner 的对应交易安全校验码(必须填写) string _input_charset = utf-8;/编码类型,完全根据客户自身的项目的编码格式而定,千万不要填错。否则极其容易造成MD5加密错误。 alipayNotifyURL = alipayNotifyURL + &partner= + partner + ¬ify_id= + Request.Formnotify_id; /获取支付宝ATN返回结果,true是正

7、确的订单信息,false 是无效的 string responseTxt = AliPay.Get_Http(alipayNotifyURL, 120000); /*加密签名程序开始* int i; NameValueCollection coll; /Load Form variables into NameValueCollection variable. coll = Request.Form; / Get names of all forms into a string array. String requestarr = coll.AllKeys; /进行排序; string Sor

8、tedstr = AliPay.BubbleSort(requestarr); /构造待md5摘要字符串 ; StringBuilder prestr = new StringBuilder(); for (i = 0; i Sortedstr.Length; i+) if (Request.FormSortedstri != & Sortedstri != sign & Sortedstri != sign_type) if (i = Sortedstr.Length - 1) prestr.Append(Sortedstri + = + Request.FormSortedstri); e

9、lse prestr.Append(Sortedstri + = + Request.FormSortedstri + &); prestr.Append(key); string mysign = AliPay.GetMD5(prestr.ToString(), _input_charset); /*加密签名程序结束* string sign = Request.Formsign; if (mysign = sign & responseTxt = true) /验证支付发过来的消息,签名是否正确,只要成功进如这个判断里,则表示该页面已被支付宝服务器成功调用 /但判断内出现自身编写的程序相关

10、错误导致通知给支付宝并不是发送success的消息或没有更新客户自身的数据库的情况,请自身程序编写好应对措施,否则查明原因时困难之极 if (Request.Formtrade_status = WAIT_BUYER_PAY)/ 判断支付状态_等待买家付款(文档中有枚举表可以参考) /更新自己数据库的订单语句,请自己填写一下 string strOrderNO = Request.Formout_trade_no;/订单号 string strPrice = Request.Formtotal_fee;/金额 如果你申请了商家购物卷功能,在返回信息里面请不要做金额的判断,否则会校验通过不了。

11、else if (Request.Formtrade_status = TRADE_FINISHED | Request.Formtrade_status = TRADE_SUCCESS)/ 判断支付状态_交易成功结束(文档中有枚举表可以参考) /更新自己数据库的订单语句,请自己填写一下 string strOrderNO = Request.Formout_trade_no;/订单号 string strPrice = Request.Formtotal_fee;/金额 else /更新自己数据库的订单语句,请自己填写一下 Response.Write(success); /返回给支付宝消息

12、,成功,请不要改写这个success /success与fail及其他字符的区别在于,支付宝的服务器若遇到success时,则不再发送请求通知(即不再调用该页面,让该页面再次运行起来), /若不是success,则支付宝默认没有收到成功的信息,则会反复不停地调用该页面直到失效,有效调用时间是24小时以内。 /最好写TXT文件,以记录下是否异步返回记录。 /写文本,纪录支付宝返回消息,比对md5计算结果(如网站不支持写txt文件,可改成写数据库) /string TOEXCELLR = MD5结果:mysign= + mysign + ,sign= + sign + ,responseTxt= + responseTxt; /StreamWriter fs = new StreamWriter(Server.MapPath(Notify_DATA/ + Da

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 企业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号