JSAPI微信支付返回错误:fail_no permission to execute
问题描述
fail_no permission to execute 一定是授权目录出问题了,因为没有权限。
开发环境及可能造成的原因
这次的微信开发是用的Mvc4,支付的封装代码不会有问题(用过很多次),授权目录和其他设置已配置好。
我习惯的写链接地址是这样的:
/u/RechargeUrl_WXPay/?showwxpaytitle=1
标准的写法是这样的:
{controller}/{action}/{id}
区别:这个微信支付页面没有参数id。
所以我就直接省略了,当然这并不会报错。只是接下来就会发生这个错误!
解决方案
应该这样写:/u/RechargeUrl_WXPay?showwxpaytitle=1 去掉'/'
微信检测到 /u/RechargeUrl_WXPay/ 是2层目录,其实RechargeUrl_WXPay只是我的一个action而已。
温馨提示:
如果系统有再次购买或者待支付的功能的时候,再次去支付的路径和参数一定要和正常支付的时候一样、如果自己加了参数可能也会导致这个错误。
PS:http://llbz.zp315.cn/u/ (这个目录是肯定正确,官方说支付页面一定要在授权目录根目录下才能发起支付)