From bc22b03ea3bbd1cf76466d2d77034d1218e35e02 Mon Sep 17 00:00:00 2001 From: BinaryWang Date: Tue, 21 Jun 2016 11:46:48 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=8D=A2=E5=8F=96=E4=BA=8C?= =?UTF-8?q?=E7=BB=B4=E7=A0=81=E5=9B=BE=E7=89=87url=E5=9C=B0=E5=9D=80?= =?UTF-8?q?=E7=9A=84=E9=87=8D=E6=9E=84=E6=96=B9=E6=B3=95=EF=BC=88=E5=8F=AF?= =?UTF-8?q?=E4=BB=A5=E9=80=89=E6=8B=A9=E6=98=AF=E5=90=A6=E7=94=9F=E6=88=90?= =?UTF-8?q?=E5=8E=8B=E7=BC=A9=E7=9A=84=E7=BD=91=E5=9D=80=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../me/chanjar/weixin/mp/api/WxMpService.java | 11 +++++++++++ .../chanjar/weixin/mp/api/WxMpServiceImpl.java | 16 +++++++++++++--- 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/WxMpService.java b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/WxMpService.java index f5efb570..d822fc33 100644 --- a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/WxMpService.java +++ b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/WxMpService.java @@ -511,6 +511,17 @@ public interface WxMpService { */ public File qrCodePicture(WxMpQrCodeTicket ticket) throws WxErrorException; + /** + *
+   * 换取二维码图片url地址(可以选择是否生成压缩的网址)
+   * 详情请见: 生成带参数的二维码
+   * 
+ * @param ticket 二维码ticket + * @param needShortUrl 是否需要压缩的二维码地址 + * @return + * @throws WxErrorException + */ + public String qrCodePictureUrl(String ticket, boolean needShortUrl) throws WxErrorException; /** *
    * 换取二维码图片url地址
diff --git a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/WxMpServiceImpl.java b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/WxMpServiceImpl.java
index ef3975de..339368f3 100644
--- a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/WxMpServiceImpl.java
+++ b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/WxMpServiceImpl.java
@@ -519,17 +519,27 @@ public class WxMpServiceImpl implements WxMpService {
   }
 
   @Override
-  public String qrCodePictureUrl(String ticket) throws WxErrorException {
+  public String qrCodePictureUrl(String ticket, boolean needShortUrl) throws WxErrorException {
     String url = "https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=%s";
     try {
-      return this.shortUrl(String.format(url, 
-                            URLEncoder.encode(ticket, Charsets.UTF_8.name())));
+      String resultUrl = String.format(url, 
+          URLEncoder.encode(ticket, Charsets.UTF_8.name()));
+      if(needShortUrl){
+        return this.shortUrl(resultUrl);
+      }
+      
+      return resultUrl;
     } catch (UnsupportedEncodingException e) {
       WxError error = WxError.newBuilder().setErrorCode(-1)
             .setErrorMsg(e.getMessage()).build();
       throw new WxErrorException(error);
     }
   }
+  
+  @Override
+  public String qrCodePictureUrl(String ticket) throws WxErrorException {
+    return qrCodePictureUrl(ticket, false);
+  }
 
   @Override
   public String shortUrl(String long_url) throws WxErrorException {