java http获取accesstoken{"err_no":40014,"err_tips":"bad params","data":{"access_token":"","expires_in":0,"expiresAt":0}}
时间: 2023-11-01 16:07:30 浏览: 246
获取access_token
5星 · 资源好评率100%
根据提供的引用内容,可以看出这是一个关于Java HTTP获取access token的问题。根据引用中的正确演示,我们可以使用Java的HttpURLConnection类来发送POST请求,同时将请求参数的内容类型改为json(contentType: 'application/json'),并将参数放到body中进行提交。具体实现可以参考以下代码:
```
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
public class AccessTokenUtil {
public static String getAccessToken(String appid, String secret) {
String accessToken = "";
try {
URL url = new URL("https://developer.toutiao.com/api/apps/v2/token");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setRequestProperty("Content-Type", "application/json");
conn.setDoOutput(true);
String input = "{\"appid\":\"" + appid + "\",\"secret\":\"" + secret + "\",\"grant_type\":\"client_credential\"}";
OutputStream os = conn.getOutputStream();
os.write(input.getBytes());
os.flush();
BufferedReader br = new BufferedReader(new InputStreamReader((conn.getInputStream())));
String output;
while ((output = br.readLine()) != null) {
accessToken += output;
}
conn.disconnect();
} catch (Exception e) {
e.printStackTrace();
}
return accessToken;
}
}
```
以上代码中的getAccessToken方法接收两个参数:appid和secret,分别对应开发者的应用ID和应用密钥。该方法返回一个字符串类型的access token,可以根据需要进行解析和使用。
阅读全文