各位大虾,我在做微信支付的时候遇到个问题,程序在测试目录通过测试之后,复制到授权目录进行测试,能正确获得prepare_id,但是提示错误:get_brand_wcpay_request:fail_invalid appid,真的是百思不得姐。腾讯客服叫我换个目录,然后就换了个目录,结果也是不行,不知道这里是否有相同问题的兄弟,求协助,谢谢!
测试目录设置不对。
登陆公众号-微信支付-开发配置,修改“支付授权目录”和“测试目录”为你调起getBrandWCPayRequest接口所在的页面的目录。比如我测试页面为http://example.com/pay/{订单号}/wechat.do,则我要填写的“测试目录”为“http://example.com/pay/{订单号}/”(不包括双引号)。
P.S.有多种支付方式,推荐用这种:http://example.com/pay/wechat/{订单号}.do,这样测试目录就只要写成“http://example.com/pay/wechat/”即可。
appid是不是写错呢?
没有写错,换到客户的域名里一切正常了,我自己的域名还是有问题的。而且我的问题腾讯到现在也没有给出具体的解决方案。晕死。。。
不知道楼主解决了没有?
可以说是没有,见上面的回复,谢谢关注!
@阿...才: 我前几天解决了 是因为授权目录的问题,我填的是"http://mydomain/payment",访问的时候用的"http://mydomain/Payment",仅一个大小写错误就直接返回异常,你可以检查一下你的授权目录是否存在大小写不匹配的问题,希望这个对你有帮助
腾讯的开发人员傻逼的可以
你好楼主,不知你解决该问题了没,我也遇到相同的问题,不知怎么解决,能否请教你呢?
代码放到产品环境可以了,但是测试环境还是有问题,我的情况比较“特殊”,因为换过域名的IP换过,换过之后域名就授权不了了,找腾讯也没有给出直接的解决办法,到现在,不过产品环境是正常的,我现在暂时没有再处理了。
呜呜,我也是,就一个大写字母把我折腾了好几天。
我也调了好几个小时,做了好多个都是可以正常显示的。做多了有一些忘记了。我来说一下我的问题。
1。支付目录一定要以“/”结束,比如http://www.ktucms.com/index.php/order/pay/
2.网站url的大小写,以及写的支付授权目录大小写一定要保持一致。
3.在测试网页的时候,不能漏写了最后一个“/”.我的就是这个问题,要不会跳出fail_invalid appid错误。
谢谢,产品环境已经可以了,暂时略过,目前没空折腾这事。
暂时搁置。
get_brand_wcpay_request:fail
验证都通过了,支付的时候返回值是失败的。本人也遇到这个问题。引用这位兄弟说的话:
@阿...才: 我前几天解决了 是因为授权目录的问题,我填的是"http://mydomain/payment",访问的时候用的"http://mydomain/Payment",仅一个大小写错误就直接返回异常,你可以检查一下你的授权目录是否存在大小写不匹配的问题,希望这个对你有帮助
我也是因为大小写的问题出错的,改了就好了。
一、如果授权测试目录设置为:
这样是不行的。会报错,需要将:授权测试目录设置为:/Pay
二,注意大小写问题。
我遇到的问题就是这样解决的。希望对后面开发的同学的帮助