支付宝 接口开发帮助(asp,php,asp.net,jsp)

 更新时间:2009年06月16日 22:35:18   作者:  
支付宝的接口开发使用的技术含量并不高!因为使用的是HTTP普通GET和Post方式传递数据,而这些数据是传给您的程序由您的程序任意处理和支付宝服务器处理,所以重点在再流程和传参!

推荐两文:1、支付宝购买流程 2、支付宝卖家流程
支付宝接口提供最新的ASP、ASP.NET、PHP、JSP等目前网络上最流行的源码包文件,程序员可以下载后按本文介绍更改参数和布置即可!而本文拿ASP.NET(C#)详细介绍。
------------------------------------------------------------------------------------- 摘自:支付宝官方
点击下载 实物商品交易服务集成技术文档和服务介绍 按照文档中的提示进行集成操作。
四种不同语言的支付宝接口程序,下载地址是:(直接点击下载)

asp实物物品交易接口

aspx.net实物物品交易接口(utf-8)

aspx.net实物物品交易接口(gbk)

jsp实物物品交易接口(gbk)

jsp实物物品交易接口(utf-8)

php实物物品交易接口(链接到论坛其他帖子)
将service改成create_digital_goods_trade_p,费用,通知返回地址等即可实现实物交易,详细参数请自行设定
将service改成trade_create_by_buyer,修改物流方式以及费用等即可实现实物交易,详细参数请自行设定
将service改成create_donate_trade_p,total_fee费用等即可实捐赠项目,详细参数请自行 设定
提醒:如需签约使用支付宝收款接口及权限,欢迎联系您的客户经理或点此申请。
---------------------------------------------------------------------------------------
其中,如果产品多了,建议使用订单号做为主题(subject)。推荐大家详细查看原码,细心设置其参数,才会运行正常,请原谅支付宝为了安全而周全的检测 :)
Default.aspx 为提交页面,相当与购物车提交后生成定单后,向支付宝发送的页面
alipay_Notify.aspx是接收支付宝通知的URL地址,
alipay_Return.aspx是支付完成后跳转的URL地址。
代码段:
HTML Code
<%@ Page language="c#" Codebehind="Default.aspx.cs" AutoEventWireup="false" Inherits="shiwuUTF_8aspx03._Default" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>Default</title>
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
<meta content="C#" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<div style="TEXT-ALIGN: center"><span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">支付网关:</span><asp:textbox id="T_gateway" runat="server" Text="https://www.alipay.com/cooperate/gateway.do?"
Width="350px"></asp:textbox><br>
<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">服务参数:<asp:dropdownlist id="T_service" runat="server" Width="357px">
<asp:ListItem>trade_create_by_buyer</asp:ListItem>
</asp:dropdownlist></span><br>
<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">合作商: </span>
<asp:textbox id="T_partner" runat="server" Text="必须,支付宝中心获得" Width="350px"></asp:textbox><br>
<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">加密协议:</span><asp:textbox id="T_sign_type" runat="server" Text="MD5" Width="350px"></asp:textbox><br>
<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">商品名称:</span><asp:textbox id="T_subject" runat="server" Text="bbs.jishu.me" Width="350px"></asp:textbox><br>
<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">商品描述:</span><asp:textbox id="T_body" runat="server" Text="aaa" Width="350px">技术迷</asp:textbox><br>
<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">支付类型:</span><asp:textbox id="T_payment_type" runat="server" Text="1" Width="350px"></asp:textbox><br>
<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">单 价 : </span><asp:textbox id="T_total_fee" runat="server" Text="0.01" Width="350px"></asp:textbox><br>
<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">数 量 : </span><asp:textbox id="TextBox1" runat="server" Text="1" Width="350px"></asp:textbox><br>
<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">平 邮 : </span><asp:textbox id="TextBox2" runat="server" Text="8" Width="350px"></asp:textbox><br>
<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">快 递 : </span><asp:textbox id="TextBox3" runat="server" Text="15" Width="350px"></asp:textbox><br>
<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">展示地址:</span><asp:textbox id="T_show_url" runat="server" Text="" Width="350px">http://bbs.jishu.me</asp:textbox><br>
<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">卖家账号:</span><asp:textbox id="T_seller_email" runat="server" Text="bobby96333@gmail.com" Width="350px"></asp:textbox><br>
<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">安全校验码:</span><asp:textbox id="T_key" runat="server" Text="注:商家签约后在支付宝会员中心里面可以获得" Width="350px"></asp:textbox><br>
<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">重定下地址:</span><asp:textbox id="T_return_url" runat="server" Text="http://60.191.43.90/temp/Alipay_Return.aspx"
Width="350px">http://bbs.jishu.me/alipay/Alipay_Return.aspx</asp:textbox><br>
<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">服务器通知地址:</span><asp:textbox id="T_notify_url" runat="server" Text="http://60.191.43.90/temp/Alipay_Notify.aspx"
Width="350px">http://bbs.jishu.me/alipay/Alipay_Notify.aspx</asp:textbox><br>
<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">服务器编码:</span><asp:textbox id="T_inputchatset" runat="server" Text="utf-8" Width="350px"></asp:textbox><br>
<span style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体">
<asp:button id="Button1" runat="server" Text="支付宝付款"></asp:button> </span></div>
</form>
</body>
</HTML>
C# Code
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Configuration;
using System.Web.Security;
using shiwuUTF_8aspx03.App_Code;
namespace shiwuUTF_8aspx03
{
/// <summary>
/// _Default 的摘要说明。
/// </summary>
public class _Default : System.Web.UI.Page
{
#region 页面控件
protected System.Web.UI.WebControls.TextBox T_gateway;
protected System.Web.UI.WebControls.DropDownList T_service;
protected System.Web.UI.WebControls.TextBox T_partner;
protected System.Web.UI.WebControls.TextBox T_sign_type;
protected System.Web.UI.WebControls.TextBox T_subject;
protected System.Web.UI.WebControls.TextBox T_body;
protected System.Web.UI.WebControls.TextBox T_payment_type;
protected System.Web.UI.WebControls.TextBox T_total_fee;
protected System.Web.UI.WebControls.TextBox TextBox1;
protected System.Web.UI.WebControls.TextBox TextBox2;
protected System.Web.UI.WebControls.TextBox TextBox3;
protected System.Web.UI.WebControls.TextBox T_show_url;
protected System.Web.UI.WebControls.TextBox T_seller_email;
protected System.Web.UI.WebControls.TextBox T_key;
protected System.Web.UI.WebControls.TextBox T_return_url;
protected System.Web.UI.WebControls.TextBox T_notify_url;
protected System.Web.UI.WebControls.TextBox T_inputchatset;
protected System.Web.UI.WebControls.Button Button1;
#endregion
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
#region 可以在此处设置接值,也可以把Button1_Click里的代码发在这里,然后立即跳转
if(!IsPostBack)
{
}
#endregion
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Button1.Click += new System.EventHandler(this.Button1_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
#region 支付按钮事件
private void Button1_Click(object sender, System.EventArgs e)
{
//按支付时间构造订单号;
System.DateTime currentTime=new System.DateTime();
//取时间
currentTime=System.DateTime.Now;
string out_trade_no = currentTime.ToString("g");
//去订单号里的-
out_trade_no = out_trade_no.Replace("-", "");
//去订单号里的:
out_trade_no = out_trade_no.Replace(":", "");
//去订单号里的空格
out_trade_no = out_trade_no.Replace(" ", "");
//业务参数赋值;
string gateway = T_gateway.Text; //默认值不要改支付接口https://www.alipay.com/cooperate/gateway.do?
/*create_flower_direct_pay_by_user鲜花接口
create_digital_goods_trade_p虚拟接口
create_direct_pay_by_user即时到帐接口*/
string service = T_service.SelectedItem.Text;//trade_create_by_buyer实物接口,也可以设置为其他值
string partner = T_partner.Text; //partner 合作伙伴ID 保留字段
string sign_type = T_sign_type.Text; //MD5类型加密
string subject = T_subject.Text; //subject 商品名称
string body = T_body.Text; //body 商品描述
string payment_type = T_payment_type.Text; //支付类型:1为商品购买,2为服务购买,3为网络拍卖,4为捐赠,5为邮费补偿,6为奖金,15为鲜花购买
string price = T_total_fee.Text; //单价可以在Page_Load事件里设置接值
string quantity = TextBox1.Text; //商品数量
string show_url =Server.UrlEncode( T_show_url.Text); //商品展示地址
string seller_email = T_seller_email.Text; //卖家支付宝账号
string key = T_key.Text; //partner账户的支付宝安全校验码
string return_url = T_return_url.Text; //服务器通知返回接口,通过get方式接受支付完成后的返回信息
string notify_url =T_notify_url.Text; //服务器通知返回接口,通过post方式接受支付完成后的返回信息
string _input_charset = T_inputchatset.Text; //页面编码方式,有utf-8和gbk,此处是utf-8
//物流类型:VIRTUAL为虚拟物品,POST为平邮,EMS为EMS快递,
string logistics_type = "POST";
string logistics_fee = TextBox2.Text;
string logistics_payment = "BUYER_PAY";
string logistics_type_1 = "EXPRESS";
string logistics_fee_1 = TextBox3.Text;
string logistics_payment_1 = "BUYER_PAY";
AliPay ap = new AliPay();
string aliay_url=ap.CreatUrl(
gateway,
service,
partner,
sign_type,
out_trade_no,
subject,
body,
payment_type,
price,
show_url,
seller_email,
key,
return_url,
_input_charset,
notify_url,
logistics_type,
logistics_fee,
logistics_payment,
logistics_type_1,
logistics_fee_1,
logistics_payment_1,
quantity
);
Response.Redirect(aliay_url);
}
#endregion
}
}
提示:请多查看备注,并进行定义。比如快递和平邮选择由“logistics_type”参数设置。

相关文章

  • 从实例分析ELF格式的.gnu.hash区与glibc的符号查询全过程

    从实例分析ELF格式的.gnu.hash区与glibc的符号查询全过程

    把ELF格式是如何组织一个符号,以及动态链接器如何读取并处理这些信息以进行符号查询的全过程详细地讲清楚,本文的实现以及so文件均以glibc 2.31为准,对ELF格式的.gnu.hash区与glibc的符号查询知识感兴趣的朋友一起学习吧
    2021-05-05
  • 利用二进制文件安装etcd的教程详解

    利用二进制文件安装etcd的教程详解

    etcd组件作为一个高可用强一致性的服务发现存储仓库.这篇文章主要介绍了利用二进制文件安装etcd的教程详解,需要的朋友可以参考下
    2019-08-08
  • matlab画三维图像的示例代码(附demo)

    matlab画三维图像的示例代码(附demo)

    这篇文章主要介绍了matlab画三维图像的示例代码(附demo),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • 程序员 代码是从头编还是使用框架好呢?

    程序员 代码是从头编还是使用框架好呢?

    为什么框架发展得越来越好,因为越来越多的程序员选择使用框架。当处于实际的项目开发中,程序员就会发现项目周期短,使用框架可以最有效地节约时间。如果完全从头开始编程,使用时间太多不说,对程序员的个人编码水平也提出了很高的要求
    2017-08-08
  • 从Chrome App看微信小程序的发展前景

    从Chrome App看微信小程序的发展前景

    App的了解也许对我们对小程序的发张和前景的分析带来一定的帮助。接下来本教程给大家分享从Chrome App看微信小程序,感兴趣的朋友可以参考下
    2016-09-09
  • WebStorm最近免安装参数免激活码 真永久激活方法

    WebStorm最近免安装参数免激活码 真永久激活方法

    相信很朋友因为WebStorm最新激活码或激活补丁的安装参数每月都会失效而烦恼,下面小编给大家分享一个一劳永逸的永久激活的方法
    2020-12-12
  • Hadoop分布式集群的搭建的方法步骤

    Hadoop分布式集群的搭建的方法步骤

    这篇文章主要介绍了Hadoop分布式集群的搭建的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06
  • GitHub Eclipse配置使用教程详解

    GitHub Eclipse配置使用教程详解

    本文主要介绍GitHub Eclipse,这里对Eclipse 使用GitHub的教程,图文并茂详细说明如何操作,有需要的小伙伴可以参考下
    2016-09-09
  • 使用阿里大于(大鱼)平台进行发送手机验证码的流程

    使用阿里大于(大鱼)平台进行发送手机验证码的流程

    这篇文章主要介绍了使用阿里大于(大鱼)平台进行发送手机验证码的流程,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-10-10
  • 完美解决浏览器Flash插件过期不能用问题

    完美解决浏览器Flash插件过期不能用问题

    这篇文章主要介绍了完美解决浏览器Flash插件过期不能用问题
    2021-02-02

最新评论