String money= request.getParameter("money");
money = (money!=null && !"".equals(money)) ? money : "0";
StringBuffer stringBuffer = new StringBuffer();
//服务地址(不变)
stringBuffer.append("service=\"mobile.securitypay.pay\"");
//商户ID
stringBuffer.append("&partner=\"2088811218895401\"");
stringBuffer.append("&_input_charset=\"UTF-8\"");
//订单号
stringBuffer.append("&out_trade_no=" + UtilDate.getOrderNum()
+ "\"");
//商品名称
stringBuffer.append("&subject=\"测试\"");
//支付类型
stringBuffer.append("&payment_type=\"1\"");
//买家支付宝帐号
stringBuffer.append("&seller_id=\"1050773380@qq.com\"");
//总金额
stringBuffer.append("&total_fee=\"" + money + "\"");
//商品说明
stringBuffer.append("&body=\"测试服务\"");
//未付款交易的超时时间
stringBuffer.append("&it_b_pay=\"1d\"");
//服务器异步通知页面路径
stringBuffer
.append("¬ify_url=\"http://114.112.63.26:8080/taobao/notify_url.jsp\"");
//商品页面(可能)
stringBuffer
.append("&show_url=\"http://114.112.63.26:8080/taobao/notify_url.jsp\"");
//String prestr = AlipayCore.createLinkString(stringBuffer.); //把数组所有元素,按照“参数=参数值”的模式用“&”字符拼接成字符串
String mysign = RSA.sign(stringBuffer.toString(),
AlipayConfig.private_key, AlipayConfig.input_charset);
//生成的sign码
stringBuffer.append("&sign=\"" + mysign + "\"");
//sign编码格式
stringBuffer.append("&sign_type=\"RSA\"");
out.print(stringBuffer.toString());
我直接用这个方式生成的!不知道对不对!手机端一直都报“系统繁忙 请稍候再试(ALI10)”
我怀疑是AlipayConfig.java这个类的配置!但是partner、private_key、ali_public_key参数都改了好几次都不对!请大师看看
4 个回复
tzheng517
java端生成订单代码我下周一整理出来,这几天生病,没时间接触电脑。
张三李四 (作者)
String money= request.getParameter("money");
我直接用这个方式生成的!不知道对不对!手机端一直都报“系统繁忙 请稍候再试(ALI10)”
我怀疑是AlipayConfig.java这个类的配置!但是partner、private_key、ali_public_key参数都改了好几次都不对!请大师看看
tzheng517
本来这几天生病一直在打点滴,今晚下班回去 我就整理一份代码发给你。系统繁忙一般可能生成的订单参数有问题。他的原理其实比较简单。
2015-01-22 11:20
tzheng517
java生成订单详见:http://ask.dcloud.net.cn/question/2673
张三李四 (作者)
十分感谢