java - 在 java ( REST API ) 中,PayPal获得认证令牌有效期/过期时间

  显示原文与译文双语对照的内容

我在 PayPal ( 用Java语言) 中获得访问令牌的生命周期有问题。 在Paypal开发者站点decribed解决方案如何获取令牌,但不如何获得生存期( 但是他们写到响应应该包含expired_in字段。) 。 还有对象 Tokeinfo,应该有关于令牌生存期的信息,但是不清楚如何使用基本的凭证( 。token/secret/id 等等 ) 来获取这个对象。

在Java中是否有一个智能解决方案来?

如果你需要任何代码( 例如我如何获得访问令牌),请在注释中。

时间: 作者:

不是美容解决方案,而是解决方案( 。PayPal基本路径是" https://api.sandbox.paypal.com"或者或或者" https://api.paypal.com":


import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Date;
import java.util.Map;
import java.util.Set;

import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;


try{
 URL url = new URL(basicPayPalPath+"/v1/oauth2/token");
 HttpURLConnection uc = (HttpURLConnection) url.openConnection();
 uc.setRequestMethod("POST");
 uc.setDoOutput(true);
 String userpass = clientID +":" + clientSecret;
 String basicAuth ="Basic" + javax.xml.bind.DatatypeConverter.printBase64Binary(userpass.getBytes());

 uc.setRequestProperty("Accept","application/json");
 uc.setRequestProperty("Authorization", basicAuth);
 uc.setRequestProperty("Content-Type","application/x-www-form-urlencoded");
 DataOutputStream wr = new DataOutputStream (uc.getOutputStream ());
 wr.writeBytes ("grant_type=client_credentials");
 wr.flush ();
 wr.close ();

 InputStream is = uc.getInputStream();
 BufferedReader rd = new BufferedReader(new InputStreamReader(is));
 String line;
 StringBuffer response = new StringBuffer(); 
 while((line = rd.readLine())!= null) {
 response.append(line);
 response.append('r');
 }
 rd.close();
 JSONParser jsonParser = new JSONParser();
 System.out.println(response.toString());
 JSONObject jsonObject = (JSONObject) jsonParser.parse(response.toString());
 Set<Map.Entry<String, String>> map = jsonObject.entrySet();
 for(Map.Entry<String, String> entry : map){
 System.out.println(entry.toString());
 }
 }catch (IOException | ParseException e){
 e.printStackTrace();
 }

作者:
...