微信公众号(服务号) 不能跨号支付 微信支付 闪一下就退了

过去有两次微信支付失败的场景(http://www.cnblogs.com/sevenun/p/6445743.html)(http://www.cnblogs.com/sevenun/p/6088093.html)
但是现在我居然又遇到了第三种支付失败的场景。

为了推广,我们让一个粉丝比我们多的公众号帮我们宣传,通过微信图文链接到我们的网站去,但是因为是从其他公众号链接到我们的支付页面,所以这是微信不允许的,必须要从我们公众号进去我们的页面才能进行支付。

但是安卓手机并不会显示错误,就只会一闪而过,正是因为一位苹果用户的告知,我们才知道有“不能跨号支付”的错误,所以知道原因后,我们就在支付失败后跳转到提示页面,让用户关注我们公众号并从我们公众号进入页面。

function onBridgeReady(){
		   WeixinJSBridge.invoke(
		       'getBrandWCPayRequest', {
		    	   "appId" : $appId,     //公众号名称,由商户传入     
		           "timeStamp" : $timeStamp,         //时间戳,自1970年以来的秒数     
		           "nonceStr" : $nonceStr, //随机串     
		           "package" : $packageValue,     
		           "signType" : $signType,         //微信签名方式:     
		           "paySign" : $paySign //微信签名 
		       },
		       function(res){    
		           if(res.err_msg == "get_brand_wcpay_request:ok" ) {
		        	   window.location.href = $sendUrl;
		           }     // 使用以上方式判断前端返回,微信团队郑重提示:res.err_msg将在用户支付成功后返回    ok,但并不保证它绝对可靠。 
		           else if(res.err_msg == "get_brand_wcpay_request:fail") {
                                // 关闭订单
		        	   $.ajax({
		        		   type : 'post',
		        		   url : '<c:url value="/close_order" />',
		        		   data : {orderId : $orderId},
		        		   dataType : 'json',
		        		   success : function(data) {
		        			   if (data == '1') {
		        				   //alert('关闭订单成功');
		        			   } else {
		        				  // alert('关闭订单失败')
		        			   }
		        		   }
		        	   });
                                    // 跳转到提示页面,让用户关注公众号
		        	   window.location.href = '<c:url value="/pay_failed" />';
		           } else {
                                    // 用户取消支付则关闭订单
		        	   $.ajax({
		        		   type : 'post',
		        		   url : '<c:url value="/close_order" />',
		        		   data : {orderId : $orderId},
		        		   dataType : 'json',
		        		   success : function(data) {
		        			   if (data == '1') {
		        				   //alert('关闭订单成功');
		        			   } else {
		        				  // alert('关闭订单失败')
		        			   }
		        		   }
		        	   });
		           }
		       }
		   ); 
		}
原文地址:https://www.cnblogs.com/sevenun/p/6508512.html