From d28bed1a1275131a5ca37f7da37961e2b518ac07 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期一, 26 八月 2019 13:44:00 +0800 Subject: [PATCH] 淘礼金创建异常处理 --- fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 45 insertions(+), 0 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java index 95750f4..ea2b1cc 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/jd/JDUtil.java @@ -1,6 +1,9 @@ package com.yeshi.fanli.util.jd; +import java.io.BufferedReader; import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; import java.io.UnsupportedEncodingException; import java.math.BigDecimal; import java.net.URLEncoder; @@ -525,4 +528,46 @@ return null; } + public static String getJDGoodsJS() { + InputStream input = JDUtil.class.getClassLoader().getResourceAsStream("jdGoods.js"); + StringBuilder sb = new StringBuilder(); + String line; + BufferedReader br = new BufferedReader(new InputStreamReader(input)); + try { + while ((line = br.readLine()) != null) { + sb.append(line); + } + } catch (IOException e) { + e.printStackTrace(); + } + return sb.toString(); + } + + static String jdGoodsJs = null; + static ScriptEngine engine = null; + static { + if (jdGoodsJs == null) + jdGoodsJs = getJDGoodsJS(); + ScriptEngineManager manager = new ScriptEngineManager(); + engine = manager.getEngineByName("javascript"); + try { + engine.eval(jdGoodsJs); + } catch (Exception e) { + } + } + + public static String getJDGoodsId(String url) { + try { + if (engine instanceof Invocable) { + Invocable in = (Invocable) engine; + String goodsId = in.invokeFunction("getGoodsId", url).toString(); + if (!StringUtil.isNullOrEmpty(goodsId)) + return goodsId.trim(); + } + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + } -- Gitblit v1.8.0