gpt4 book ai didi

java - 将 curl 请求转换为 URLConnection

转载 作者:塔克拉玛干 更新时间:2023-11-01 19:07:19 35 4
gpt4 key购买 nike

我有这个 cURL 请求:

curl -H 'Accept: application/vnd.twitchtv.v3+json' -H 'Authorization: OAuth <access_token>' \
-X PUT https://api.twitch.tv/kraken/users/<bot_name>/follows/channels/<channel_name>

我需要将其转换为 Java URLConnection 请求。这是我到目前为止所拥有的:

String url = "https://api.twitch.tv/kraken/?oauth_token=" + bot.botOAuth.substring("oauth:".length());

URL obj = new URL(url);
HttpURLConnection conn = (HttpURLConnection) obj.openConnection();

conn.setRequestProperty("Content-Type", "application/json");
conn.setDoOutput(true);

conn.setRequestMethod("PUT");

OutputStreamWriter out = new OutputStreamWriter(conn.getOutputStream());
out.write("https://api.twitch.tv/kraken/users/" + bot.botName + "/follows/channels/" + gamrCorpsTextField.getText());
out.close();

new InputStreamReader(conn.getInputStream());

任何帮助将不胜感激!

最佳答案

您准备在此代码中打开的 URL:

String url = "https://api.twitch.tv/kraken/?oauth_token=" + bot.botOAuth.substring("oauth:".length());

与您的 curl 请求 URL 不匹配:

https://api.twitch.tv/kraken/users/<bot_name>/follows/channels/<channel_name>

你似乎想要更像这样的东西:

URL requestUrl = new URL("https://api.twitch.tv/kraken/users/" + bot.botName
+ "/follows/channels/" + gamrCorpsTextField.getText());
HttpURLConnection connection = (HttpUrlConnection) requestUrl.openConnection();

connection.setRequestMethod("PUT");
connection.setRequestProperty("Accept", "application/vnd.twitchtv.v3+json");
connection.setRequestProperty("Authorization", "OAuth <access_token>");
connection.setDoInput(true);
connection.setDoOutput(false);

这会设置一个“URLConnection 请求”,等同于 curl 命令将根据请求发出的请求。从那里您可以通过 connection 对象获取响应代码、读取响应 header 和正文等。

关于java - 将 curl 请求转换为 URLConnection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29860086/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com