From 123bef0ea9464ade28ff05f8c540baf50f3c8fde Mon Sep 17 00:00:00 2001 From: Binary Wang Date: Mon, 13 Sep 2021 23:08:32 +0800 Subject: [PATCH] =?UTF-8?q?:art:=20=E9=87=8D=E6=9E=84=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8FLink=E7=9B=B8=E5=85=B3=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wx/miniapp/api/WxMaLinkService.java | 22 ++++++++++-- .../wx/miniapp/api/WxMaShortLinkService.java | 14 -------- .../miniapp/api/impl/WxMaLinkServiceImpl.java | 22 +++++++++--- .../api/impl/WxMaShortLinkServiceImpl.java | 34 ------------------- .../api/impl/WxMaLinkServiceImplTest.java | 24 ++++++++----- .../impl/WxMaShortLinkServiceImplTest.java | 24 ------------- 6 files changed, 51 insertions(+), 89 deletions(-) delete mode 100644 weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/WxMaShortLinkService.java delete mode 100644 weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/impl/WxMaShortLinkServiceImpl.java delete mode 100644 weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/api/impl/WxMaShortLinkServiceImplTest.java diff --git a/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/WxMaLinkService.java b/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/WxMaLinkService.java index c3c4559a8..090ac95e3 100644 --- a/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/WxMaLinkService.java +++ b/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/WxMaLinkService.java @@ -1,16 +1,32 @@ package cn.binarywang.wx.miniapp.api; +import cn.binarywang.wx.miniapp.bean.shortlink.GenerateShortLinkRequest; import cn.binarywang.wx.miniapp.bean.urllink.GenerateUrlLinkRequest; import me.chanjar.weixin.common.error.WxErrorException; /** - * 获取小程序 URL Link接口 - * 接口文档: https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/url-link/urllink.generate.html * @author xiaoyu * @since 2021-06-10 */ public interface WxMaLinkService { + /** + * 获取小程序 URL Link接口 + * 接口文档: https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/url-link/urllink.generate.html + * + * @param request 请求 + * @return link地址 + * @throws WxErrorException . + */ + String generateUrlLink(GenerateUrlLinkRequest request) throws WxErrorException; - String generate(GenerateUrlLinkRequest request) throws WxErrorException; + /** + * 获取小程序 Short Link接口 + * 接口文档: https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/short-link/shortlink.generate.html + * + * @param request 请求 + * @return link地址 + * @throws WxErrorException . + */ + String generateShortLink(GenerateShortLinkRequest request) throws WxErrorException; } diff --git a/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/WxMaShortLinkService.java b/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/WxMaShortLinkService.java deleted file mode 100644 index e8e5942a9..000000000 --- a/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/WxMaShortLinkService.java +++ /dev/null @@ -1,14 +0,0 @@ -package cn.binarywang.wx.miniapp.api; - - -import cn.binarywang.wx.miniapp.bean.shortlink.GenerateShortLinkRequest; -import me.chanjar.weixin.common.error.WxErrorException; - -/** - * 获取小程序 Short Link接口 - * 接口文档: https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/short-link/shortlink.generate.html - */ -public interface WxMaShortLinkService { - - String generate(GenerateShortLinkRequest request) throws WxErrorException; -} diff --git a/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/impl/WxMaLinkServiceImpl.java b/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/impl/WxMaLinkServiceImpl.java index c3b78e4e1..e0dd4a915 100644 --- a/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/impl/WxMaLinkServiceImpl.java +++ b/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/impl/WxMaLinkServiceImpl.java @@ -2,34 +2,46 @@ package cn.binarywang.wx.miniapp.api.impl; import cn.binarywang.wx.miniapp.api.WxMaLinkService; import cn.binarywang.wx.miniapp.api.WxMaService; +import cn.binarywang.wx.miniapp.bean.shortlink.GenerateShortLinkRequest; import cn.binarywang.wx.miniapp.bean.urllink.GenerateUrlLinkRequest; import com.google.gson.JsonObject; import lombok.AllArgsConstructor; import me.chanjar.weixin.common.error.WxErrorException; import me.chanjar.weixin.common.util.json.GsonParser; -import me.chanjar.weixin.common.util.json.WxGsonBuilder; import static cn.binarywang.wx.miniapp.constant.WxMaApiUrlConstants.Link.GENERATE_URLLINK_URL; +import static cn.binarywang.wx.miniapp.constant.WxMaApiUrlConstants.ShortLink.GENERATE_SHORT_LINK_URL; /** * 获取小程序 URL Link接口实现 * 接口文档: https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/url-link/urllink.generate.html + * * @author xiaoyu * @since 2021-06-10 */ @AllArgsConstructor public class WxMaLinkServiceImpl implements WxMaLinkService { - private final WxMaService wxMaService; @Override - public String generate(GenerateUrlLinkRequest request) throws WxErrorException { - String result = this.wxMaService.post(GENERATE_URLLINK_URL,request); + public String generateUrlLink(GenerateUrlLinkRequest request) throws WxErrorException { + String result = this.wxMaService.post(GENERATE_URLLINK_URL, request); String linkField = "url_link"; JsonObject jsonObject = GsonParser.parse(result); - if(jsonObject.has(linkField)){ + if (jsonObject.has(linkField)) { return jsonObject.get(linkField).toString(); } throw new WxErrorException("无url_link"); } + + @Override + public String generateShortLink(GenerateShortLinkRequest request) throws WxErrorException { + String result = this.wxMaService.post(GENERATE_SHORT_LINK_URL, request); + String linkField = "link"; + JsonObject jsonObject = GsonParser.parse(result); + if (jsonObject.has(linkField)) { + return jsonObject.get(linkField).toString(); + } + throw new WxErrorException("无link"); } +} diff --git a/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/impl/WxMaShortLinkServiceImpl.java b/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/impl/WxMaShortLinkServiceImpl.java deleted file mode 100644 index 074dfd4d5..000000000 --- a/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/api/impl/WxMaShortLinkServiceImpl.java +++ /dev/null @@ -1,34 +0,0 @@ -package cn.binarywang.wx.miniapp.api.impl; - -import cn.binarywang.wx.miniapp.api.WxMaService; -import cn.binarywang.wx.miniapp.api.WxMaShortLinkService; -import cn.binarywang.wx.miniapp.bean.shortlink.GenerateShortLinkRequest; -import cn.binarywang.wx.miniapp.bean.urllink.GenerateUrlLinkRequest; -import com.google.gson.JsonObject; -import lombok.AllArgsConstructor; -import me.chanjar.weixin.common.error.WxErrorException; -import me.chanjar.weixin.common.util.json.GsonParser; - -import static cn.binarywang.wx.miniapp.constant.WxMaApiUrlConstants.Link.GENERATE_URLLINK_URL; -import static cn.binarywang.wx.miniapp.constant.WxMaApiUrlConstants.ShortLink.GENERATE_SHORT_LINK_URL; - -/** - * 获取小程序 Short Link接口 - * 接口文档: https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/short-link/shortlink.generate.html - */ -@AllArgsConstructor -public class WxMaShortLinkServiceImpl implements WxMaShortLinkService { - - private final WxMaService wxMaService; - - @Override - public String generate(GenerateShortLinkRequest request) throws WxErrorException { - String result = this.wxMaService.post(GENERATE_SHORT_LINK_URL,request); - String linkField = "link"; - JsonObject jsonObject = GsonParser.parse(result); - if(jsonObject.has(linkField)){ - return jsonObject.get(linkField).toString(); - } - throw new WxErrorException("无link"); - } - } diff --git a/weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/api/impl/WxMaLinkServiceImplTest.java b/weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/api/impl/WxMaLinkServiceImplTest.java index 68ca9b621..c97e11077 100644 --- a/weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/api/impl/WxMaLinkServiceImplTest.java +++ b/weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/api/impl/WxMaLinkServiceImplTest.java @@ -1,6 +1,7 @@ package cn.binarywang.wx.miniapp.api.impl; import cn.binarywang.wx.miniapp.api.WxMaService; +import cn.binarywang.wx.miniapp.bean.shortlink.GenerateShortLinkRequest; import cn.binarywang.wx.miniapp.bean.urllink.GenerateUrlLinkRequest; import cn.binarywang.wx.miniapp.test.ApiTestModule; import com.google.inject.Inject; @@ -8,24 +9,29 @@ import me.chanjar.weixin.common.error.WxErrorException; import org.testng.annotations.Guice; import org.testng.annotations.Test; -import static org.testng.Assert.*; - @Test @Guice(modules = ApiTestModule.class) public class WxMaLinkServiceImplTest { - @Inject private WxMaService wxMaService; @Test - public void testGenerate() throws WxErrorException { - - GenerateUrlLinkRequest request = GenerateUrlLinkRequest.builder() + public void testGenerateUrlLink() throws WxErrorException { + String url = this.wxMaService.getLinkService().generateUrlLink(GenerateUrlLinkRequest.builder() .path("pages/tabBar/home/home") - .build(); - - String url = this.wxMaService.getLinkService().generate(request); + .build()); System.out.println(url); } + + @Test + public void testGenerateShortLink() throws WxErrorException { + final String generate = this.wxMaService.getLinkService() + .generateShortLink(GenerateShortLinkRequest.builder(). + pageUrl("pages/productView/editPhone/editPhone?id=31832") + .pageTitle("productView") + .isPermanent(false).build()); + System.out.println("generate:"); + System.out.println(generate); + } } diff --git a/weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/api/impl/WxMaShortLinkServiceImplTest.java b/weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/api/impl/WxMaShortLinkServiceImplTest.java deleted file mode 100644 index 4e6e1a9f6..000000000 --- a/weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/api/impl/WxMaShortLinkServiceImplTest.java +++ /dev/null @@ -1,24 +0,0 @@ -package cn.binarywang.wx.miniapp.api.impl; - -import cn.binarywang.wx.miniapp.api.WxMaService; -import cn.binarywang.wx.miniapp.bean.shortlink.GenerateShortLinkRequest; -import cn.binarywang.wx.miniapp.test.ApiTestModule; -import com.google.inject.Inject; -import me.chanjar.weixin.common.error.WxErrorException; -import org.testng.annotations.Guice; -import org.testng.annotations.Test; - -@Test -@Guice(modules = ApiTestModule.class) -public class WxMaShortLinkServiceImplTest { - @Inject - private WxMaService wxService; - - @Test - public void testGenerate() throws WxErrorException { - final String generate = this.wxService.getShortLinkService().generate(GenerateShortLinkRequest.builder(). - pageUrl("pages/productView/editPhone/editPhone?id=31832").pageTitle("productView").isPermanent(false).build()); - System.out.println("generate:"); - System.out.println(generate); - } -}