🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# 微信支付 - 共享收货地址 共享收货地址依赖于 **用户AccessToken** 对象,因此必需先授权获取 AccessToken: ```php use Thenbsp\Wechat\OAuth\Client; $client = new Client($wechat); $callbackUrl = 'Your callback url'; if( !isset($_GET['code']) ) { header('Location: '.$client->getAuthorizeUrl($callbackUrl)); } else { $accessToken = $client->getAccessToken($_GET['code']); } ``` 注入用户 AccessToken 并获取配置: ```php $o = new Address($accessToken); $configJSON = $o->getConfig(); ``` 将配置注入 WeixinJSBridge: ```javascript var getAddress = function() { WeixinJSBridge.invoke('editAddress', <?php echo $configJSON; ?>, function(res) { switch(res.err_msg) { case 'edit_address:ok': alert('获取编辑收货地址成功!'); // res.userName 姓名 // res.telNumber 手机号 // res.proviceFirstStageName 省份 // res.addressCitySecondStageName 城市 // res.addressDetailInfo 详细地址 // res.addressPostalCode 邮编 // res.nationalCode 收货地址国家码 break; case 'edit_address:fail': alert('获取编辑收货地址失败!'); break; case 'edit_address:cancel': alert('您已取消获取地址!'); break; default: alert(JSON.stringify(res)); break; } } } ``` ```html <button type="button" onclick="getAddress()">选择收货地址</button> ``` 详细用法请查看 [/example/payment-address.php](/example/payment-address.php)