随笔- 3  文章- 0  评论- 7  阅读- 20758 

一、支付参数组装:

复制代码
 1                         String[] parameters={
 2                                 "service=\"mobile.securitypay.pay\"",//固定值
 3                                 "partner=\"24243535353\"",//商户号
 4                                 "_input_charset=\"utf-8\"",
 5                                 "notify_url=\"http://sfsfs/dsdsd/notify/AlipayNotify.action\"",//通知地址
 6                                 "out_trade_no=\""+orderid+"\"",//商户内部订单号
 7                                 "subject=\""+shopOrder.getHdbt()+"\"",//说明
 8                                 "payment_type=\"1\"",//固定值
 9                                 "seller_id=\"323232@163.com\"",//账户
10                                 "total_fee=\""+truePaymoney+"\"",//支付金额(元)
11                                 "body=\"旅游商品\"",//标题
12                                 "it_b_pay=\"30m\""
13                             };
                
                   signAllString(parameters)
复制代码

二、配置文件

私钥的生成请参考官网https://doc.open.alipay.com/doc2/detail.htm?treeId=58&articleId=103242&docType=1

然后将私钥配置到AlipayConfig,公钥在支付宝的商户端配置。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
public class AlipayConfig {
     
    //↓↓↓↓↓↓↓↓↓↓请在这里配置您的基本信息↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
    // 合作身份者ID,以2088开头由16位纯数字组成的字符串
    public static String partner = "208834334343";
     
    public static String key = "sdfsfs";
     
    public static String service = "mobile.securitypay.pay";
     
    public static String seller_id = "sdfsdfsf@163.com";
        public static String private_key = "";
    // 商户的公钥钥
    public static String public_key ="";
    // 支付宝的公钥,无需修改该值(不要删除也不要修改,在接收通知的时候需要进行签名认证)
    public static String ali_public_key= "";
            // 调试用,创建TXT日志文件夹路径
    public static String log_path = "D:\\";
 
    // 字符编码格式 目前支持 gbk 或 utf-8
    public static String input_charset = "utf-8";
     
    // 签名方式 不需修改
    public static String sign_type = "RSA";
 
}

三、支付参数RSA签名

复制代码
 1     private String signAllString(String [] array){
 2         StringBuffer sb = new StringBuffer("");
 3         for (int i = 0; i < array.length; i++) {
 4             if(i==(array.length-1)){
 5                 sb.append(array[i]);
 6             }else{
 7                 sb.append(array[i]+"&");
 8             }
 9         }
10         System.out.println(sb.toString());
11         String sign = "";
12         try {
13             sign = URLEncoder.encode(RSA.sign(sb.toString(), AlipayConfig.private_key, "utf-8"), "utf-8");
14         } catch (UnsupportedEncodingException e) {
15             // TODO Auto-generated catch block
16             e.printStackTrace();
17         }
18         sb.append("&sign=\""+sign+"\"&");
19         sb.append("sign_type=\"RSA\"");
20         
21         return sb.toString();//将该字符串返回到手机端就就可以调用APP支付接口进行支付了
22     }
复制代码

 

 posted on   第8号  阅读(4759)  评论(2编辑  收藏  举报
点击右上角即可分享
微信分享提示