微信公众号开发教程(九)长链接转短链接

本文作者:陈惠,叩丁狼高级讲师。原创文章,转载请注明出处。

应用场景:
1.很多时候,我们的链接由于域名太长或者参数太多会导致整个链接很长很长,如果直接使用该链接来生成二维码的话,比如(商品二维码、支付二维码等),会导致扫码解析的速度和成功率都会下降,但是如果我们先把长链接转为短链接,再去生成二维码,就可以提高速度和成功率了。

2.就算不是用于二维码,链接越长也会有很多问题,比如不利于传播与推广。
有的网站还会规定字数,超过长度就不能发送出去了。
如果有人发下面这样的链接给你,可能你都不想去打开它。

微信公众号开发教程(九)长链接转短链接_第1张图片

为此,微信也提供了接口可以帮我们进行转换:

接口地址:

  http请求方式: POST
  https://api.weixin.qq.com/cgi-bin/shorturl?access_token=ACCESS_TOKEN

请求参数

参数 是否必须 说明
access_token 调用接口凭证
action 此处填long2short,代表长链接转短链接
long_url 需要转换的长链接,支持http://、https://、weixin://wxpay 格式的url

代码:

    /**
     * 长链接转短链接
     * @param longUrl
     */
    public static void getShortUrl(String longUrl){
        HashMap map = new HashMap();
        map.put("action","long2short");
        map.put("long_url",longUrl);
        //发起请求到指定的接口,并且带上菜单json数据
        String result = HttpUtil.post(GET_SHORT_URL.replace("ACCESS_TOKEN",getAccessToken()),map);
        System.out.println(result);
    }

正常情况下,微信会返回下述JSON数据包给公众号:

{"errcode":0,"errmsg":"ok","short_url":"http:\/\/w.url.cn\/s\/AvCo6Ih"}

参数说明

参数 说明
errcode 错误码
errmsg 错误信息
short_url 短链接

错误时微信会返回错误码等信息,JSON数据包示例如下(该示例为AppID无效错误):

{"errcode":40013,"errmsg":"invalid appid"}

你可能感兴趣的:(微信开发)