gpt4 book ai didi

java - Twitch Api - 不允许授予密码

转载 作者:太空宇宙 更新时间:2023-11-04 07:33:22 25 4
gpt4 key购买 nike

我想使用以下代码访问 twitch api。

package droa.app.twitch;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URISyntaxException;
import java.util.ArrayList;

import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;

public class Notifier {

/**
* @param args
* @throws URISyntaxException
* @throws IOException
* @throws ClientProtocolException
*/
public static void main(String[] args) throws URISyntaxException, ClientProtocolException, IOException {
HttpPost request = new HttpPost("https://api.twitch.tv/kraken/oauth2/token");
org.apache.http.client.HttpClient client = new DefaultHttpClient();
ArrayList<NameValuePair> postParameters = new ArrayList<NameValuePair>();
postParameters.add(new BasicNameValuePair("grant_type", "password"));
postParameters.add(new BasicNameValuePair("client_id", Credentials.clientid));
postParameters.add(new BasicNameValuePair("client_secret", Credentials.clientsecret));
postParameters.add(new BasicNameValuePair("username", Credentials.username));
postParameters.add(new BasicNameValuePair("password", Credentials.password));
postParameters.add(new BasicNameValuePair("scope", "user_read"));
request.setEntity(new UrlEncodedFormEntity(postParameters));
HttpResponse httpResponse = client.execute(request);

BufferedReader rd = new BufferedReader(new InputStreamReader(httpResponse.getEntity().getContent()));

String line = "";
while ((line = rd.readLine()) != null) {
System.out.println(line);
}


}

}

但它似乎不起作用,我收到错误。

{"status":403,"message":"Password grant not permitted for client ID chodustnuqjzkc07ohd3rfkbzrlopzb","error":"Forbidden"}

我遵循了官方指南https://github.com/justintv/Twitch-API/blob/master/password-credentials.md

我想知道我做错了什么?

最佳答案

我一直在尝试做同样的事情。如果你不使用 JavaScript,这看起来是不可能的!我会尝试curl-java:http://curl.haxx.se/libcurl/java/我无法让它工作,但你可以!

但是查看您的回复,我认为您在 Twitch 上的客户端无法使用密码授予流程。如果是这样,这就是我的 java 应用程序无法正常工作的原因。如果 API 拒绝用户密码授予流程,我会非常生气...尤其是因为没有人告诉我!

“由于处理用户密码的敏感性,这种类型的授权流程仅在具体情况下才允许。如果您认为您的应用程序是不错的选择,请直接与我们联系。”-直接从他们的页面!一直以来我们都做得对!我会代表我联系他们(仅在这个问题上我就花了大约一个月的时间)。

关于java - Twitch Api - 不允许授予密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17350337/

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