2-legged OAuth を使用した Gmail アトム フィードの問題が発生しています。エラー メッセージは「401 無許可」です。
エラーメッセージは以下のようなものです。
<HTML>
<HEAD>
<TITLE>Unauthorized</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000">
<H1>Unauthorized</H1>
<H2>Error 401</H2>
</BODY>
</HTML>
先週まで、Gmail のアトム フィードを使用しても問題はありませんでした。今週から、Gmail のアトム フィードと oauth に変更はありませんが、問題が発生しています。現在、この問題はすべてのユーザー (50,000 アカウント) で発生しているわけではありませんが、この問題はますます増加しています。
この問題はGoogle側が原因のようです。
同じ問題を抱えている人はいますか?
ソースコードは以下のようなものです。
private GoogleOAuthParameters mOauthParameters;
private OAuthSigner mSigner;
private final String SCOPE = "https://mail.google.com/mail/feed/atom";
GoogleService service;
String result = null;
mOauthParameters = new GoogleOAuthParameters();
mSigner = new OAuthHmacSha1Signer();
mOauthParameters.setOAuthConsumerKey(CONSUMER_KEY);
mOauthParameters.setOAuthConsumerSecret(CONSUMER_SECRET);
service = new GoogleService("gmail","feed");
service.setOAuthCredentials(mOauthParameters, mSigner);
service.setConnectTimeout(timeOut);
service.setReadTimeout(timeOut * 5);
GDataRequest request = service.createFeedRequest(new URL(SCOPE +"?xoauth_requestor_id=" + email));
request.execute();
InputStream is = null;
try {
is = request.getResponseStream();
StringBuffer out = new StringBuffer();
byte[] buffer = new byte[4094];
int readSize;
while ( (readSize = is.read(buffer)) != -1) {
out.append(new String(buffer, 0, readSize));
}
result = out.toString();
} catch (Exception e) {
throw e;
} finally {
is.close();
}
あなたの助けが必要です。
2-legged OAuth を使用した gmail アトム フィードのソースまたは他のサンプルを確認してください。
よろしく。