你好,请按照以下几点检查: 1 开放平台应用签名得去掉冒号,要小写 2 android studio包签名会变化 3 改完应用签名要过一段时间才生效 4 微信退出重启一下
H5支付得到预支付id但是无法唤起微信app支付页面原因commodityId:21874 skuId:42094 type:1 num:1 oid:null _request:Current HttpServletRequest 2019-06-24 13:13:19.926 INFO 4228 --- [nio-8080-exec-3] com.juyi.util.web.HttpServletUtils : x-forwarded-for: null 微信支付请求参数: {}===>>>微信 pay 返回的XML: {}===>>> <return_msg><![CDATA[OK]]></return_msg> <nonce_str><![CDATA[QPY0eKhJksq8JbGM]]></nonce_str> <sign><![CDATA[D20CE61E626667AFFA9D0F5F232F276E]]></sign> <result_code><![CDATA[SUCCESS]]></result_code> <prepay_id><![CDATA[wx24131319221873a64ca665001924080700]]></prepay_id> <trade_type><![CDATA[MWEB]]></trade_type> mweb_url style="max-width: 100%; box-sizing: border-box !important; word-wrap: break-word !important;">https://wx.tenpay.com/cgi-bin/mmpayweb-bin/checkmweb?prepay_id=wx24131319221873a64ca665001924080700&package=931174300]]>/mweb_url> 微信返回支付链接————————https://wx.tenpay.com/cgi-bin/mmpayweb-bin/checkmweb?prepay_id=wx24131319221873a64ca665001924080700&package=931174300支付结果 ===>>>https://wx.tenpay.com/cgi-bin/mmpayweb-bin/checkmweb?prepay_id=wx24131319221873a64ca665001924080700&package=931174300 [代码]<!DOCTYPE html>[代码][代码]<html lang=[代码][代码]"en"[代码] [代码]xmlns:th=[代码][代码]"http://www.thymeleaf.org"[代码][代码]>[代码][代码]<head>[代码][代码]<meta charset=[代码][代码]"UTF-8"[代码][代码]>[代码][代码]<title>巨亿商城</title>[代码][代码]<link rel=[代码][代码]"stylesheet"[代码] [代码]type=[代码][代码]"text/css"[代码] [代码]href=[代码][代码]"/css/commoditydetail.css"[代码][代码]>[代码][代码]<script src=[代码][代码]"/js/jquery-3.4.0.js"[代码] [代码]type=[代码][代码]"text/javascript"[代码][代码]></script>[代码][代码]<script type=[代码][代码]"text/javascript"[代码][代码]>[代码][代码] [代码][代码]$(function() {[代码][代码] [代码][代码]var commodityid = $([代码][代码]"#commoditydetailinput"[代码][代码]).val();[代码][代码] [代码][代码]$.ajax({[代码][代码] [代码][代码]url : [代码][代码]'/storeCommodityRest/'[代码][代码]+commodityid+[代码][代码]''[代码][代码],[代码][代码]//{commodityid}//394[代码][代码] [代码][代码]type : [代码][代码]'GET'[代码][代码],[代码][代码] [代码][代码]dataType : [代码][代码]'json'[代码][代码],[代码][代码] [代码][代码]timeout : [代码][代码]1000[代码][代码],[代码][代码] [代码][代码]cache : [代码][代码]false[代码][代码],[代码][代码] [代码][代码]//beforeSend : LoadFunction, //加载执行方法 [代码][代码] [代码][代码]//error : erryFunction, //错误执行方法 [代码][代码] [代码][代码]success : succFunction [代码][代码]//成功执行方法 [代码][代码] [代码][代码]})[代码][代码] [代码][代码]/* function LoadFunction() {[代码][代码] [代码][代码]$("#commoditydetailshow").html('加载中...');[代码][代码] [代码][代码]}[代码][代码] [代码][代码]function erryFunction() {[代码][代码] [代码][代码]alert("error");[代码][代码] [代码][代码]} */[代码][代码] [代码][代码]function succFunction(tt) {[代码][代码] [代码][代码]//$("#commoditydetailshow_1").html('');[代码][代码] [代码][代码]//eval将字符串转成对象数组[代码][代码] [代码][代码]//var json = { "id": "10086", "uname": "zhangsan", "email": "zhangsan@qq.com" };[代码][代码] [代码][代码]//json = eval(json);[代码][代码] [代码][代码]//alert("===json:id=" + json.id + ",uname=" + json.uname + ",email=" + json.email);[代码][代码] [代码] [代码] [代码][代码]/* var json = eval(tt); [代码][代码] [代码][代码]$.each(json, function (index, item) {[代码][代码] [代码][代码]//循环获取数据 [代码][代码] [代码][代码]var goodsname = json[index].goodsname;[代码][代码] [代码][代码]var goodsnumber = json[index].goodsnumber;[代码][代码] [代码][代码]var brandid = json[index].brandid;[代码][代码] [代码][代码]$("#commoditydetailshow").html($("#commoditydetailshow").html() + "<br>" + goodsname + " - " + goodsnumber + " - " + brandid + "<br/>");[代码][代码] [代码][代码]}); */[代码][代码] [代码][代码]var json = eval(tt);[代码][代码] [代码][代码]//var goodsname = json.goodsname;[代码][代码] [代码][代码]//var goodsnumber = json.goodsnumber;[代码][代码] [代码][代码]//var brandid = json.brandid;[代码][代码] [代码][代码]//var goodstitileimgurls = json.goodstitileimgurls;[代码][代码] [代码][代码]$([代码][代码]"#commoditydetailshow_1"[代码][代码]).html($([代码][代码]"#commoditydetailshow_1"[代码][代码]).html()[代码][代码] [代码][代码]+[代码][代码]"<li><img alt='图片' src='/img/"[代码][代码]+json.goodstitileimgurls+[代码][代码]"'></li>"[代码][代码] [代码][代码]+[代码][代码]"<li><span>价格:¥"[代码][代码]+json.marketprice+[代码][代码]"</span></li>"[代码][代码] [代码][代码]+[代码][代码]"<li><p>"[代码][代码]+json.goodsname+[代码][代码]"</p></li>"[代码][代码] [代码][代码]);[代码][代码] [代码][代码]$([代码][代码]"#commoditydetailshow_2_1"[代码][代码]).html($([代码][代码]"#commoditydetailshow_2_1"[代码][代码]).html()+[代码][代码]"<span>商品详情</span>"[代码][代码]);[代码][代码] [代码][代码]$([代码][代码]"#commoditydetailshow_2_2"[代码][代码]).html($([代码][代码]"#commoditydetailshow_2_2"[代码][代码]).html()+[代码][代码]"<img alt='图片' src='/img/"[代码][代码]+json.goodsgraphicdetails+[代码][代码]"'>"[代码][代码]);[代码][代码] [代码][代码]}[代码][代码] [代码][代码]});[代码][代码]</script>[代码][代码] [代码] [代码]<script type=[代码][代码]"text/javascript"[代码][代码]>[代码][代码]var url_toPay = [代码][代码]"/pay/topay"[代码][代码];[代码][代码] [代码] [代码]function GetQueryString(name)[代码][代码]{ [代码][代码] [代码][代码]var reg = [代码][代码]new[代码] [代码]RegExp([代码][代码]"(^|&)"[代码][代码]+ name +[代码][代码]"=([^&]*)(&|$)"[代码][代码]); [代码][代码] [代码][代码]var r = window.location.search.substr([代码][代码]1[代码][代码]).match(reg);[代码][代码] [代码][代码]//search,查询?后面的参数,并匹配正则 [代码][代码] [代码][代码]if[代码][代码](r!=[代码][代码]null[代码][代码])[代码][代码] [代码][代码]return[代码] [代码]unescape(r[[代码][代码]2[代码][代码]]);[代码][代码] [代码][代码]return[代码] [代码]null[代码][代码];[代码][代码]}[代码][代码]//http://127.0.0.1:8080/ai/show?c=21874&s=42094&t=0&=1[代码][代码]//http://47.95.192.81:8092/ai/show?c=21874&s=42094&t=0&=1[代码][代码]function toPay()[代码][代码]{[代码][代码] [代码][代码]//var phoneNumber = $("#commoditydetailinput_1").val();[代码][代码] [代码][代码]var commodityid = $([代码][代码]"#commoditydetailinput"[代码][代码]).val();[代码][代码] [代码][代码]var skuid = $([代码][代码]"#commoditydetailshow_3"[代码][代码]).val();[代码][代码] [代码][代码]//var goodsnumber = $("#commoditydetailshow_5").val();[代码][代码] [代码][代码]var num = [代码][代码]1[代码][代码];[代码][代码] [代码][代码]var iType = [代码][代码]1[代码][代码];[代码][代码]//GetQueryString("t")[代码][代码] [代码][代码]$.get([代码][代码] [代码][代码]url_toPay,[代码][代码] [代码][代码]{[代码][代码] [代码][代码]//phoneNumber:phoneNumber,[代码][代码] [代码][代码]commodityId:[代码][代码]21874[代码][代码],[代码][代码]//commodityid,//21874,GetQueryString("c")[代码][代码] [代码][代码]skuId:[代码][代码]42094[代码][代码],[代码][代码]//skuid,//'42094',GetQueryString("s")[代码][代码] [代码][代码]type:iType,[代码][代码] [代码][代码]num:num,[代码][代码]//goodsnumber,//GetQueryString("n")[代码][代码] [代码][代码]},[代码][代码] [代码][代码]function(data)[代码][代码] [代码][代码]{ [代码][代码] [代码][代码]//alert(data);[代码][代码] [代码][代码]//调用支付接口 跳转到第三方.[代码][代码] [代码][代码]switch[代码][代码](iType)[代码][代码] [代码][代码]{[代码][代码] [代码][代码]case[代码] [代码]"0"[代码][代码]:[代码][代码] [代码][代码]document.write(data);[代码][代码] [代码][代码]break[代码][代码];[代码][代码] [代码][代码]case[代码] [代码]"1"[代码][代码]: [代码][代码] [代码][代码]if[代码][代码](data.search([代码][代码]"www"[代码][代码]) != -[代码][代码]1[代码][代码])[代码][代码] [代码][代码]{[代码][代码] [代码][代码]data +=[代码][代码]"&redirect_url="[代码] [代码]+ encodeURIComponent([代码][代码]"http://h5.juyixingcheng.com:8090/ai/getpwd"[代码][代码]);[代码][代码] [代码][代码]}[代码][代码] [代码][代码]//alert(data); [代码][代码] [代码][代码]self.location.href=data;[代码][代码] [代码][代码]break[代码][代码]; [代码][代码] [代码][代码]}[代码][代码] [代码] [代码] [代码][代码]});[代码][代码] [代码] [代码]}[代码][代码]</script>[代码][代码]</head>[代码][代码]<body [代码][代码]class[代码][代码]=[代码][代码]"bodyshow"[代码][代码]>[代码][代码] [代码][代码]<div>[代码][代码] [代码][代码]<input type=[代码][代码]"hidden"[代码] [代码]name=[代码][代码]"commodityid"[代码] [代码]id=[代码][代码]"commoditydetailinput"[代码] [代码]th:value=[代码][代码]"${commodityid}"[代码][代码]/>[代码][代码] [代码][代码]<!-- <input type=[代码][代码]"hidden"[代码] [代码]id=[代码][代码]"commoditydetailinput_1"[代码] [代码]th:value=[代码][代码]"${phoneNumber}"[代码][代码]/> -->[代码][代码] [代码][代码]<div [代码][代码]class[代码][代码]=[代码][代码]"commoditydetailshow"[代码] [代码]id=[代码][代码]"commoditydetailshow"[代码][代码]>[代码][代码] [代码][代码]<div th:each=[代码][代码]"storeSku:${storeSku}"[代码][代码]>[代码][代码] [代码][代码]<input type=[代码][代码]"hidden"[代码] [代码]id=[代码][代码]"commoditydetailshow_3"[代码] [代码]name=[代码][代码]"skuid"[代码] [代码]th:value=[代码][代码]"${storeSku.getSkuid()}"[代码][代码]>[代码][代码] [代码][代码]</div>[代码][代码] [代码][代码]<div th:each=[代码][代码]"storeCommodity:${storeCommodity}"[代码][代码]>[代码][代码] [代码][代码]<ul id=[代码][代码]"commoditydetailshow_1"[代码][代码]>[代码][代码] [代码] [代码] [代码][代码]</ul>[代码][代码] [代码][代码]<div id=[代码][代码]"commoditydetailshow_2"[代码][代码]>[代码][代码] [代码][代码]<div id=[代码][代码]"commoditydetailshow_2_1"[代码][代码]></div>[代码][代码] [代码][代码]<div id=[代码][代码]"commoditydetailshow_2_2"[代码][代码]></div>[代码][代码] [代码][代码]</div>[代码][代码] [代码][代码]<input type=[代码][代码]"hidden"[代码] [代码]id=[代码][代码]"commoditydetailshow_4"[代码] [代码]name=[代码][代码]"goodsname"[代码] [代码]th:value=[代码][代码]"${storeCommodity.getGoodsname()}"[代码][代码]>[代码][代码] [代码][代码]<!-- <input type=[代码][代码]"hidden"[代码] [代码]id=[代码][代码]"commoditydetailshow_5"[代码] [代码]name=[代码][代码]"goodsnumber"[代码] [代码]th:value=[代码][代码]"${storeCommodity.getGoodsnumber()}"[代码][代码]> -->[代码][代码] [代码][代码]<input type=[代码][代码]"hidden"[代码] [代码]id=[代码][代码]"commoditydetailshow_6"[代码] [代码]name=[代码][代码]"marketprice"[代码] [代码]th:value=[代码][代码]"${storeCommodity.getMarketprice()}"[代码][代码]>[代码][代码] [代码][代码]<button id=[代码][代码]"ljdh"[代码] [代码]onclick=[代码][代码]"toPay()"[代码][代码]>立即兑换</button>[代码][代码] [代码][代码]</div>[代码][代码] [代码][代码]</div>[代码][代码] [代码][代码]</div>[代码][代码]</body>[代码][代码]</html>[代码] H5支付可以获取预支付id但是在手机QQ浏览器上进行测试不能够唤起微信支付页面的原因,上面是前台代码以及后端打印数据
2019-06-24你好,您这边的描述我们无法定位问题哦。请详细描述一下问题背景。比如在用什么API的时候,单号多少。然后有什么问题。这样子。
调用微信支付的时候直接返回到公众号了在用JSAPI调用微信支付的时候,就直接跳到公众号了是啥情况
2019-06-24你好,这边建议您对应的业务哦。境外助理邮箱:wxpayglobal@tencent.com,境内助理邮箱 wxpayyunying@tencent.com
服务商如何获取小微商户的对账单文件小微商户的接入文档(https://pay.weixin.qq.com/wiki/doc/api/xiaowei.php?chapter=4_2)中没有提对账单下载,那么服务商如何获取小微商户的对账单文件呢?
2019-06-24https://pay.weixin.qq.com/wiki/doc/api/index.html,你好,请参考这里进行开发。
html5 编写的app 是使用h5API还是app得API啊app不是用得原生安卓编写得,用得html5编写得,我应该使用h5的接口还是app的接口,有没有相关demo
2019-06-24你好,这样是不可以的哦。
小微商户资料修改及提现接口问题最近使用微信小微入驻和升级的接口给子商户申请特约商户,请问小微商户升级之后,针对升级成功的用户,是否能继续用小微商户资料修改及提现的相关接口为其修改资料?
2019-06-24你好,方便的话。发送具体的问题描述到weixincard@tencent.com。描述清楚问题背景。只凭这样简单几句话,我们没有办法定位问题呢。
礼品卡核销的时候用户端没有服务通知礼品卡核销的时候用户端没有服务通知
2019-06-24你好,您这边描述的问题不是很清楚哦。请详细描述下问题背景。什么情况下,调用了哪个API,这样子。
扫码付微信支付通知下方进入商家小程序扫码付微信支付通知下方进入商家小程序
2019-06-24你好,请提供商户号。只有这些接口链接没法判断。
境外微信支付请求统一支付接口https://api.mch.weixin.qq.com/pay/unifiedorder提示 ( [return_code] => FAIL [return_msg] => 暂不支持该商户使用本api接口 )
2019-06-24你好,麻烦参考https://pay.weixin.qq.com/wiki/doc/apiv3/convention.php?chapter=13_1 V3接口里的指引进行操作。
微信,小程序调用支付提示签名错误,求解决[图片] 这个怎么解决,我估摸着是密钥问题,但是新版的签名我设置了几次,都不对呢,签名是32位的数字或字母吧
2019-06-24你好,这样是不可以的哦。
微信内置浏览器支付,可不可以访问weixin://wxpay 链接唤起支付通过扫描二维码进入微信浏览器内,然后调取第三方支付,此时第三方会返回一个类似weixin://wxpay开头的code_url。 可不可以在不生成二维码的情况下,通过js或微信内置对象唤起支付页吗(即正常解析weixin://wxpay开头的code_url)?
2019-06-24