カレンダーAPIのV3を使用して開発を行っていますが
認証処理に関して質問があります。
ソースコードは、一番下に記載した通りとなります。
この実装で認証は行えて、カレンダーAPI(V3)も使用できました。
上記の機能を実現する場合、記載したソースコードですと、以下の問題点が生じます。
以上、宜しくお願い致します。
private static String CLIENT_ID = "XXXXXXXXXXXXXXX";
private static String CLIENT_SECRET = "XXXXXXXXXXX";
private static String REDIRECT_URI = "XXXXXXXXXXXX";
public static void main(String[] args) throws IOException {
// プロキシの設定
(割愛)
HttpTransport httpTransport = new NetHttpTransport();
JsonFactory jsonFactory = new JacksonFactory();
GoogleAuthorizationCodeFlow flow = new GoogleAuthorizationCodeFlow.Builder(
httpTransport, jsonFactory, CLIENT_ID, CLIENT_SECRET,
Arrays.asList(CalendarScopes.CALENDAR)).setAccessType("online").setApprovalPrompt("auto").build();
String url = flow.newAuthorizationUrl().setRedirectUri(REDIRECT_URI).build(); ←※1
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String code = br.readLine();
GoogleTokenResponse response = flow.newTokenRequest(code).setRedirectUri(REDIRECT_URI).execute();
GoogleCredential credential = new GoogleCredential().setFromTokenResponse(response);
Calendar service = new Calendar.Builder(httpTransport, jsonFactory, credential).build();
}
}
自己レスです。
添付ファイルがうまく添付できなかったようなのでUPします。
--
このメールは Google グループのグループ「Google Apps API Japan」の登録者に送られています。
このグループから退会し、メールの受信を停止するには、google-apps-api-...@googlegroups.com にメールを送信します。
このグループに投稿するには、google-app...@googlegroups.com にメールを送信してください。
その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。
[s~iwfmg10/1.367033920805415995].<stdout>: 2013-04-30 16:46:51 [Request 5F5833C7] DEBUG - com.google.api.client.googleapis.json.GoogleJsonResponseException: 401
{
"code" : 401,
"errors" : [ {
"domain" : "global",
"location" : "Authorization",
"locationType" : "header",
"message" : "Login Required",
"reason" : "required"
} ],
"message" : "Login Required"
}:わかめです。あまり裏を取らずに適当な事を書いてしまいますが、以下のコードを変えるとどうなるでしょうか?setAccessType("online") を setAccessType("offline") に変える。
refresh_tokenが取れるようになればユーザの認証は一度だけで、好きな時にAccessTokenが取れるんじゃないかなーと思います。
どうでしょうか?
2013年4月23日 13:52 A.R <ncia...@nciwftest2.mygbiz.com>:
自己レスです。
添付ファイルがうまく添付できなかったようなのでUPします。
--
このメールは Google グループのグループ「Google Apps API Japan」の登録者に送られています。
このグループから退会し、メールの受信を停止するには、google-apps-api-japan+unsubscribe@googlegroups.com にメールを送信します。
このグループに投稿するには、google-apps-api-ja...@googlegroups.com にメールを送信してください。
その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。