![](/img/trans.png)
[英]Authenticating with Netflix: Netflix OAuth vs. SignPost OAuth: Which is correct?
[英]Issue with OAuth using signpost API on Netflix - OAuthCommunicationException
我试图从retrieveRequestToken路标API获取Auth_url。 它抛出OAuthCommunicationException。 当我对twitter使用相同的代码时(更改使用者并提供之后),它可以正常工作。 请在这里帮助我。 谢谢
public class NetflixTest {
private static final long serialVersionUID = 1L;
public static final String NETFLIX_REQUEST_TOKEN_URL = "http://api.netflix.com/oauth/request_token";
public static final String NETFLIX_ACCESS_TOKEN_URL = "http://api.netflix.com/oauth/access_token";
public static final String NETFLIX_AUTHORIZE_URL = "https://api-user.netflix.com/oauth/login";
public static void main(String[] args) {
System.setProperty("debug", "1");
OAuthConsumer consumer = new DefaultOAuthConsumer("jw5pvuq766d6rf4m2pu2ft5r", "y8x3dhMFqz");
OAuthProvider provider = new DefaultOAuthProvider(NETFLIX_REQUEST_TOKEN_URL,
NETFLIX_ACCESS_TOKEN_URL, NETFLIX_AUTHORIZE_URL);
try {
String authUrl = provider.retrieveRequestToken(consumer, "http://mydomain.com/Netflix/");
System.out.println(authUrl);
} catch (OAuthMessageSignerException e) {
e.printStackTrace();
} catch (OAuthNotAuthorizedException e) {
e.printStackTrace();
} catch (OAuthExpectationFailedException e) {
e.printStackTrace();
} catch (OAuthCommunicationException e) {
e.printStackTrace();
System.out.println(e.getResponseBody());
}
}
}
if (connection.getRequestMethod().equalsIgnoreCase("POST")) {
connection.setRequestProperty("Content-Type",
"application/x-www-form-urlencoded");
connection.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(
connection.getOutputStream());
wr.writeBytes("");
wr.flush();
wr.close();
} else {
connection.connect();
}
如上所述,更改了DefaultOAuthProvider类的sendRequest。 似乎服务器很严格,并且在执行POST时需要一些字节。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.