Java HttpsURLConnection - TwitchAPI - 更新频道信息

Java HttpsURLConnection - TwitchAPI - Update Channel Information

我尝试创建一个 java 工具来更改 Twitch 频道信息(状态/游戏/延迟)。在 Documentation 中是使用 curl 与 API 一起更新频道信息的示例:

curl -H 'Accept: application/vnd.twitchtv.v3+json' -H 'Authorization: OAuth <access_token>' \
-d "channel[status]=Playing+cool+new+game!&channel[game]=Diablo&channel[delay]=0" \
-X PUT https://api.twitch.tv/kraken/channels/test_channel

我试图在 Java 中使用 HttpsURLConnection 重新创建它。但是我收到了错误响应代码 400,而且我不知道我的源代码可能出了什么问题。

回应:{"error":"Bad Request","message":"Missing required parameter channel","status":400}

我的源代码:http://pastebin.com/F1QyCULu

希望有人能帮我解决这个问题。

好的,我找到了它的工作原理。

我删除了 URLEncoder,只是用加号替换了空格 String sendData = "channel[" + key + "]=" + data.replace(' ', '+');

我将内容类型设置为 application/x-www-form-urlencoded apiConnection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");

就是这样。