拼多多授权

拼多多平台接入文档 http://open.pinduoduo.com/#/document
API文档: http://open.pinduoduo.com/#/apidocument

第一步,获取CODE值

打开指定页面, 获取授权值,(返回的页面是,你填写的回调地址)

 public String CodeUrl(){
        String url="http://jinbao.pinduoduo.com/open.html";
        //client_id
        url+="?client_id="+client_id;
        //授权类型为CODE
        url+="&response_type=code";
        //授权回调地址
        url+="&redirect_uri="+result_url;
        return url;
    }

第二部,拿到CODE值后,获取访问令牌

因为拼多多接口的要求,请求方式必须是post,而且参数为json格式的,所以更改一下工具类的类型

 public String loadJSON (String url,String param) {
        StringBuilder json = new StringBuilder();
        PrintWriter out = null;
        try {
            // Post请求的url,与get不同的是不需要带参数
            URL oracle = new URL(url);
            HttpURLConnection connection = (HttpURLConnection) oracle.openConnection();
            // 发送POST请求必须设置如下两行
            connection.setDoOutput(true);
            connection.setDoInput(true);
            connection.setUseCaches(false);
            connection.setInstanceFollowRedirects(true);
            connection.setRequestMethod("POST"); // 设置请求方式
            connection.setRequestProperty("Content-Type", "application/json"); // 设置接收数据的格式
            connection.connect();

            out = new PrintWriter(connection.getOutputStream());
            out.print(param);
            // flush输出流的缓冲
            out.flush();
            BufferedReader in = new BufferedReader(new InputStreamReader(
                    connection.getInputStream(),"utf-8"));

            String inputLine = null;
            while ( (inputLine = in.readLine()) != null) {
                json.append(inputLine);
            }
            in.close();
        } catch (IOException e) {
            System.out.println("发送 POST 请求出现异常!" + e);
            return "-1";
        }
        return json.toString();
    }

    /**
     拼多多 授权码 ---授权地址
     获取授权码(code)
     商家授权正式环境:http://mms.pinduoduo.com/open.html
     多多客授权正式环境:http://jinbao.pinduoduo.com/open.html
     参考    http://open.pinduoduo.com/#/document
     返回地址:
     http://ddjb.pinduoduo.com/open.html?client_id=745f2d713c4140cea73e61a316af82ab&response_type=code&redirect_uri=http%3A%2F%2Fpinfa.chcvn.com%2Fpdd_ddk%2Fpddcode
     */
    public String CodeUrl(){
        String url="http://jinbao.pinduoduo.com/open.html";
        //client_id
        url+="?client_id="+client_id;
        //授权类型为CODE
        url+="&response_type=code";
        //授权回调地址
        url+="&redirect_uri="+result_url;
        return url;
    }

    /**
     * 获取访问令牌(access_token)
     * 正式环境:http://open-api.pinduoduo.com/oauth/token
     *  参考    http://open.pinduoduo.com/#/document
     */
    public String  Codeaccess_token(String code){
        String url="http://open-api.pinduoduo.com/oauth/token";
        JSONObject json=new JSONObject();
        try {
            json.put("client_id",client_id);
            json.put("client_secret",client_secret);
            json.put("grant_type","authorization_code");
            json.put("code",code);
            json.put("redirect_uri",result_url);
        } catch (JSONException e) {
            e.printStackTrace();
        }
        String json1 = loadJSON(url, json.toString());
        return  json1.toString();
    }

Codeaccess_token 这个方法,返回的就是 授权后的值

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,242评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,355评论 25 709
  • 婆婆来了三个星期了,儿子对奶奶的态度却不见好转,据说我不在家的时候,儿子不怎么哭,也要奶奶喂,但我在家里时候,就什...
    二解阅读 886评论 0 0
  • 就这样又过去两个小时,我似睡非睡迷迷糊糊的熬过了两个小时,两个小时而已就这样难熬,我的青春因你而这样折磨。
    甜蜜姑娘阅读 258评论 0 1
  • 阳光打进了房间,闹钟在响着 ,似乎响了许久。而床上的人却不为所动。 “砰!” “都几点了,还不起床,你是不上...
    后悟阅读 295评论 0 0