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


    package com.wanhua.weixin.util;

    import java.util.HashMap;
    import java.util.Map;

    import org.json.JSONObject;

    import play.cache.Cache;
    import play.i18n.Messages;

    import com.alibaba.fastjson.JSON;
    import com.wanhua.weixin.model.AccessToken;

    /**
     * 请求地址url的工具类
     *
     * @author w_xfpenga 2015-1-5
     *
     */
    public class UrlUtil {

        /**
         * 将一条长链接转成短链接
         *
         * @param longUrl
         *            长链接
         * @return 返回短链接
         */
        public static String longToShortUrl(String longUrl) {
            // 设置调试模式标志
            boolean flag = true;
            System.out.println("--UrlUtil----longToShortUrl---flag---" + flag);
            // 若是调试模式,则返回原长链接
            if (flag) {
                return longUrl;
            }
            // 不是调试模式则返回长链接转成短链接之后的链接
            // 获取到的凭证
            String access_token = AccessToken.getAccessToken();
            // 请求地址
            String requestUrl = WXConst.LONG_TO_SHORT_URL + access_token;
            // 请求参数
            Map<String, String> map = new HashMap<String, String>();
            map.put("action", "long2short");
            map.put("long_url", longUrl);
            // 请求输出参数
            String outputStr = JSON.toJSONString(map);
            String shortUrl = null;
            try {
                // 请求返回的结果
                String result = WXHttpUtil.MsgHttpsRequest(requestUrl, "POST", outputStr);
                // 将返回结果转换成json格式数据
                JSONObject resultObj = new JSONObject(result);
                // 返回的结果的状态码
                int code = resultObj.getInt("errcode");
                if (code == 0) {
                    // 返回的短链接url
                    shortUrl = resultObj.getString("short_url");
                    // 请求成功返回提示信息
                    System.out.println(Messages.get("long_to_short_url_success") + result);
                } else {
                    // 请求失败的返回提示信息
                    System.out.println(Messages.get("long_to_short_url_fail") + result);
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
            return shortUrl;

        }
    }

  • 相关阅读:
    硬件笔记之删除UEFI启动项
    高数学习笔记之向量内积(点乘)和外积(叉乘)概念及几何意义
    机器学习笔记之聚类算法K-Means
    机器学习之聚类算法Mean Shift
    机器学习笔记之聚类算法 层次聚类 Hierarchical Clustering
    机器学习笔记之决策树分类Decision Tree
    机器学习笔记之一步步教你轻松学关联规则Apriori算法
    机器学习笔记之占一步步教你学K-means
    完美解决github访问速度慢
    ROS2 cartographer 保存地图
  • 原文地址:https://www.cnblogs.com/xunfang123/p/4237141.html
Copyright © 2020-2023  润新知