官方下载的C#的Demo,扫码支付模式二正常。模式一扫码后提示 [原生支付URL参数错误],
后来改了data里面的参数,
data.SetValue("mch_id", WxPayConfig.GetConfig().GetMchID());//商户号
data.SetValue("time_stamp", WxPayApi.GenerateTimeStamp());//时间戳
data.SetValue("nonce_str", WxPayApi.GenerateNonceStr());//随机字符串
data.SetValue("product_id", productId);//商品ID
data.SetValue("sign_type", "MD5");//签名
string str = ToUrlParams(data.GetValues());//转换为URL串
string url = "weixin://wxpay/bizpayurl?"+str;
Log.Info(this.GetType().ToString(), "Get native pay mode 1 url : " + url);
return url;
签名使用了MD5。
现在提示 “获取商户订单信息超时或者商户返回的httpcode非200”
检查了签名没有错误。app_id也没有错。
甚至按照网上的说法改了,也不行
try
{
if (m_values.ContainsKey("return_code"))//2015-10-20 WL 添加,扫码支付不包含return_code键,红包发送必须走return程序
{//##
//2015-06-29 错误是没有签名
if (m_values["return_code"] != "SUCCESS")
{
return m_values;
}
}
CheckSign();//验证签名,不通过会抛异常
你好,你获取的原生支付URL发出来看看,谢谢!
不知道为什么,用官方的DEMO,并没有在服务器里面生成Log文件
调试通过了。感谢助手给的灵感。我首先检查LOG,官方的log文件没有自动生成。后来自己加进去了。还有就是商户平台里面写的回调地址不要用https,终于搞定了。哈哈哈哈,感谢
我遇上的问题和你一样,出错地放也是你贴出代码这里出错的,我改了代码解决了,但是切换成生产沙箱环境以后又报支付URL参数错误的提示,请问您是怎么解决的?