获取小程序 URL Link,适用于短信、邮件、网页、微信内等拉起小程序的业务场景。通过该接口,可以选择生成到期失效和永久有效的小程序链接,有数量限制,目前仅针对国内非个人主体的小程序开放
1、 获取接口凭证ACCESS_TOKEN
2、请求地址
POST https://api.weixin.qq.com/wxa/generate_urllink?access_token=ACCESS_TOKEN
3、请求参数
access_token 接口调用凭证
path 通过 URL Link 进入的小程序页面路径,必须是已经发布的小程序存在的页面,不可携带 query 。path 为空时会跳转小程序主页
query 通过 URL Link 进入小程序时的query,最大1024个字符,只支持数字,大小写英文以及部分特殊字符:!#$&'()*+,/:;=?@-._~%
4、成功返回结果
{
"errcode": 0,
"errmsg": "ok",
"url_link": "URL Link"
}5、Demo例子
//获取商品分享短地址
public function getLink(Request $request){
$id = $request->id;
$uid = $request->uid;
//获取getAccessToken
$url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='.Env('APPID').'&secret='.Env('APPSECRET');
$result =$this->curlRequest($url);
$result =json_decode($result,true);
//获取二维码
$codeurl = 'https://api.weixin.qq.com/wxa/generate_urllink?access_token='.$result['access_token'];
$param = [
'path'=>'/pages/goods/detail',
'query'=>'id='.$id.'&uid='.$uid,
];
$data = $this->curlRequest($codeurl,json_encode($param));
$res = json_decode($data,true);
if ($res['errcode'] == 0) {
return $this->jsonData(ApiErrDesc::SUCCESS[0],ApiErrDesc::SUCCESS[1],$res['url_link']);
}else{
return $this->jsonData(ApiErrDesc::SUCCESS[0],ApiErrDesc::SUCCESS[1],'获取失败');
}
}
/**
* 使用curl方式实现get或post请求
* @param $url 请求的url地址
* @param $data 发送的post数据 如果为空则为get方式请求
* return 请求后获取到的数据
*/
public function curlRequest($url, $data = '')
{
$ch = curl_init();
$params[CURLOPT_URL] = $url; //请求url地址
$params[CURLOPT_HEADER] = false; //是否返回响应头信息
$params[CURLOPT_RETURNTRANSFER] = true; //是否将结果返回
$params[CURLOPT_FOLLOWLOCATION] = true; //是否重定向
$params[CURLOPT_TIMEOUT] = 30; //超时时间
if (!empty($data)) {
$params[CURLOPT_POST] = true;
$params[CURLOPT_POSTFIELDS] = $data;
}
$params[CURLOPT_SSL_VERIFYPEER] = false;//请求https时设置,还有其他解决方案
$params[CURLOPT_SSL_VERIFYHOST] = false;//请求https时,其他方案查看其他博文
curl_setopt_array($ch, $params); //传入curl参数
$content = curl_exec($ch); //执行
curl_close($ch); //关闭连接
return $content;
}
关于简忆
简忆诞生的故事



粤ICP备16092285号
文章评论(0)