Closed Tai7sy closed 2 years ago
本 SDK 把 URL 中的大写视为包含连字号的 segment。请求时, camelCase
会替换为 camel-case
。相关 issue 可参考 #56、 #69。
为了避免大小写错乱,URL 中存在变量时的正确做法是:使用 链式 URI Template 的 Path 变量。比如:
->v3->marketing->favor->users->_openid_->coupons->post(['openid' => 'AbcdEF12345'])
->v3->marketing->favor->users->{'{openid}'}->coupons->post(['openid' => 'AbcdEF12345'])
->chain('{+myurl}'->post(['myurl' => 'v3/marketing/favor/users/AbcdEF12345/coupons'])
->{'{+myurl}'}->post(['myurl' => 'v3/marketing/favor/users/AbcdEF12345/coupons'])
thanks
方法内将URL进行了normalize https://github.com/wechatpay-apiv3/wechatpay-php/blob/2478445c639c120c007a102cac0137e17e1b3ac8/src/Builder.php#L129
会导致一些API失效, 如 查询订单 https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_4_2.shtml#menu2
参数 out_trade_no 需要从path传入, 本身out_trade_no支持数字大小写和部分特殊字符 normalize之后会将参数修改导致API返回订单未找到