zoukankan      html  css  js  c++  java
  • swo2 SOA OAuth 使用,



    分三步: 
    1:申请 账号,密码 
    2:得到token
    3:使用token,调用api


    2 得到token
     
    public String getToken() {
        String token = "";
        String authorization = new BASE64Encoder().encode((consumerKey + ":" + consumerSecret).getBytes());
        authorization = authorization.trim();
        OkHttpClient client = new OkHttpClient();
        RequestBody formBody = new FormEncodingBuilder().add("grant_type", "client_credentials").build();
        Request request = new Request.Builder().url(tokenUrl).post(formBody)
                .addHeader("authorization", "Basic " + authorization)
                .addHeader("content-type", "application/x-www-form-urlencoded").addHeader("cache-control", "no-cache")
                .build();
        try {
            Response response = client.newCall(request).execute();
            if (response.isSuccessful()) {
                String result = response.body().string();
                JSONObject ret = JSONObject.parseObject(result);
                token = ret.getString("access_token");
                return token;
            }
        } catch (IOException e) {
            e.printStackTrace();
        }

        return token;
    }
     
    3. 使用token 调用api
     
    public String testOSP(String param) {
        String result = "";
        String token = wso2Uitil.getToken();  
        RequestBody body = RequestBody.create(MediaType.parse("application/json; charset=utf-8"), param);
        Request request = new Request.Builder().url(ospurl).post(body)
                .addHeader("authorization", "Bearer " + token)
                .addHeader("cache-control", "no-cache").build();
        try {
            Response response = client.newCall(request).execute();
            result = response.body().string();
        } catch (IOException e) {
            e.printStackTrace();
        }

        return result;
    }
     
  • 相关阅读:
    背包问题
    標準差、方差、正太分佈公式
    C#實現XML的增刪查改
    XML的基礎結構
    微信小程序入門學習資料鏈接
    微信小程序wxml無法實現頁面跳轉的問題
    088_jsp转成成servle所在的路径?
    075_jsp如何debug?
    028_Mybatis返回int类型为空时报错 attempted to return null from a method with a primitive return type (int)
    087_数据库类型
  • 原文地址:https://www.cnblogs.com/suizhikuo/p/13389526.html
Copyright © 2011-2022 走看看