zoukankan      html  css  js  c++  java
  • 将一条长链接转成短链接

    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;

        }
    }

  • 相关阅读:
    【VUE3.0体验】关于路由的一些坑
    TensorFlow中的卷积函数
    TensorFlow源码安装
    ubuntu远程桌面
    TensorFlow图像处理API
    C程序员眼里的Python
    深度剖析HashMap的数据存储实现原理(看完必懂篇)
    golang 互斥锁和读写锁
    golang goroutine的调度
    golang channel的使用以及调度原理
  • 原文地址:https://www.cnblogs.com/xunfang123/p/4237141.html
Copyright © 2011-2022 走看看