微信短链接

将一条长链接转成短链接。

主要使用场景: 开发者用于生成二维码的原链接(商品、支付二维码等)太长导致扫码速度和成功率下降,将原长链接通过此接口转成短链接再生成二维码将大大提升扫码速度和成功率。

接口调用请求说明

开发者可通过OpenID来获取用户基本信息。请使用https协议。

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

官网例子


curl -d "{\"action\":\"long2short\",\"long_url\":\"http://wap.koudaitong.com/v2/showcase/goods?alias=128wi9shh&spm=h56083&redirect_count=1\"}" "https://api.weixin.qq.com/cgi-bin/shorturl?access_token=ACCESS_TOKEN"

返回说明

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

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

参数说明

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

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

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

 

  我的调用例子

/**
	 * 微信生成短链
	 * 
	 * @return 返回短链;如果生成短链失败,则返回原长链接
	 */
	public String shortUrl(String longUrl, String accessToken) {
		try {
			Map<String, String> params = new LinkedHashMap<String, String>();
			params.put("action", "long2short");
			params.put("long_url", longUrl);
			WXClient wxClient = new WXClient();
			JSONObject result = wxClient.postJson("https://api.weixin.qq.com/cgi-bin/shorturl?access_token=" + accessToken, JSONObject.fromObject(params).toString());
			if ("ok".equals(result.getString("errmsg"))) {
				return result.getString("short_url");
			}
			logger.error("长链:" + longUrl + ", 微信短链生成失败:" + result.toString());
		} catch (Exception e) {
			logger.error("微信短链生成异常", e);
		}
		return longUrl;
	}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值