Forráskód Böngészése

百度链接实时推送

chao 3 éve
szülő
commit
24c1b9e431

+ 11 - 1
src/main/java/com/caimei/modules/info/web/InfoController.java

@@ -148,12 +148,22 @@ public class InfoController extends BaseController {
 				info.setBasePv((long)(random.nextInt(191)+10));
 			}
 		}
+		boolean flag = false;
+		if (StringUtils.isBlank(info.getId())) {
+			flag = true;
+		}
+		// 保存成功返回info.id
 		infoService.save(info,request);
 		addMessage(redirectAttributes, "保存信息成功");
 		// 更新索引
 		coreServiceUitls.updateArticleIndex(Integer.valueOf(info.getId()));
-		if(StringUtils.equals("1", ltype))
+		if (flag) {
+			// 新增文章 百度链接实时推送
+			generateUtils.pushBaiduLink("https://www.caimei365.com/info/detail-"+info.getId()+"-1.html");
+		}
+		if(StringUtils.equals("1", ltype)) {
 			return "redirect:"+Global.getAdminPath()+"/info/infoLabel/list";
+		}
 		return "redirect:"+Global.getAdminPath()+"/info/info/list?repage";
 	}
 

+ 30 - 20
src/main/java/com/caimei/modules/opensearch/CoreServiceUitls.java

@@ -6,6 +6,7 @@ import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Component;
 import org.springframework.util.LinkedMultiValueMap;
 import org.springframework.util.MultiValueMap;
+import org.springframework.web.client.RestClientException;
 import org.springframework.web.client.RestTemplate;
 
 /**
@@ -46,29 +47,38 @@ public class CoreServiceUitls {
     }
 
     private void updateIndexPost(String path){
-        // 获取core服务器地址
-        String coreServer = Global.getConfig("caimei.core");
-        RestTemplate restTemplate = new RestTemplate();
-        String uri = coreServer + "/commodity/search/index" + path;
-        // 打印参数
-        logger.info("更新索引uri:" + uri);
-        // 发起Post请求
-        MultiValueMap<String, String> paramMap = new LinkedMultiValueMap<>();
-        String result = restTemplate.postForObject(uri, paramMap, String.class);
-        logger.info("更新索引result:" + result);
+        try {
+            // 获取core服务器地址
+            String coreServer = Global.getConfig("caimei.core");
+            RestTemplate restTemplate = new RestTemplate();
+            String uri = coreServer + "/commodity/search/index" + path;
+            // 打印参数
+            logger.info("更新索引uri:" + uri);
+            // 发起Post请求
+            MultiValueMap<String, String> paramMap = new LinkedMultiValueMap<>();
+            String result = restTemplate.postForObject(uri, paramMap, String.class);
+            logger.info("更新索引result:" + result);
+        } catch (RestClientException e) {
+            logger.info("更新索引出现异常!" + e);
+        }
     }
 
     public String queryLogisticsGet(String number, String companyCode, String mobile){
-        // 获取core服务器地址
-        String coreServer = Global.getConfig("caimei.core");
-        RestTemplate restTemplate = new RestTemplate();
-        String uri = coreServer + "/tools/query/logistics?number" + number + "&companyCode=" + companyCode + "&mobile=" + mobile;
-        // 打印参数
-        logger.info("查询物流uri:" + uri);
-        // 发起Get请求
-        String result = restTemplate.getForObject(uri, String.class);
-        logger.info("查询物流result:" + result);
-        return result;
+        try {
+            // 获取core服务器地址
+            String coreServer = Global.getConfig("caimei.core");
+            RestTemplate restTemplate = new RestTemplate();
+            String uri = coreServer + "/tools/query/logistics?number" + number + "&companyCode=" + companyCode + "&mobile=" + mobile;
+            // 打印参数
+            logger.info("查询物流uri:" + uri);
+            // 发起Get请求
+            String result = restTemplate.getForObject(uri, String.class);
+            logger.info("查询物流result:" + result);
+            return result;
+        } catch (RestClientException e) {
+            logger.info("查询物流出现异常!" + e);
+            return "";
+        }
     }
 
 

+ 54 - 0
src/main/java/com/caimei/modules/opensearch/GenerateUtils.java

@@ -8,6 +8,13 @@ import org.springframework.util.LinkedMultiValueMap;
 import org.springframework.util.MultiValueMap;
 import org.springframework.web.client.RestTemplate;
 
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.PrintWriter;
+import java.net.URL;
+import java.net.URLConnection;
+
 /**
  * www静态页面生成utils
  *
@@ -58,4 +65,51 @@ public class GenerateUtils {
         }
     }
 
+    /**
+     * 百度链接实时推送
+     */
+    public void pushBaiduLink(String param) {
+        String result = "";
+        PrintWriter out = null;
+        BufferedReader in = null;
+        try {
+            //建立URL之间的连接
+            URLConnection conn = new URL("http://data.zz.baidu.com/urls?site=https://www.caimei365.com&token=hgKJrx3lqsPPCf73").openConnection();
+            // 设置通用的请求属性
+            conn.setRequestProperty("User-Agent", "curl/7.12.1");
+            conn.setRequestProperty("Host", "data.zz.baidu.com");
+            conn.setRequestProperty("Content-Type", "text/plain");
+            conn.setRequestProperty("Content-Length", "83");
+            //发送POST请求必须设置如下两行
+            conn.setDoInput(true);
+            conn.setDoOutput(true);
+            //获取conn对应的输出流
+            out = new PrintWriter(conn.getOutputStream());
+            //发送请求参数
+            out.print(param.trim());
+            //进行输出流的缓冲
+            out.flush();
+            //通过BufferedReader输入流来读取Url的响应
+            in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
+            String line;
+            while((line=in.readLine()) != null){
+                result += line;
+            }
+        } catch (Exception e) {
+            logger.info("百度链接实时推送出现异常!" + e);
+        } finally {
+            try{
+                if(out != null) {
+                    out.close();
+                }
+                if(in != null) {
+                    in.close();
+                }
+            } catch(IOException ex) {
+                ex.printStackTrace();
+                logger.info("百度链接实时推送关闭连接异常!" + ex);
+            }
+        }
+        logger.info("百度链接实时推送:"+result);
+    }
 }