2017-12-12 18 views
0

私はSOとSEのすべてがこの質問に対する特定の回答を探していて、回答を見つけることができないようです。私はPython Flaskを使ってGoogleカレンダーにアクセスし、条件に基づいてカレンダーに記入する簡単なWebアプリケーションを構築しています。私の問題は、OAuth2でredirect_urisが正しいことです。私のコードは以下の通りです。コードを実行しようとするたびに、リダイレクトURIが間違っていてアプリケーションがそれ以上進まないというエラーが表示されます。それに夢中になっているようなリダイレクトURIはhttp://localhost:8080です。リダイレクトURIを開発者のコ​​ンソールに追加する設定をして、そのURIにtailing '/ oauth2callback'(末尾に '/'を付けて)を追加してみました。私はまた、別のURIを完全に指定しようとしましたが、エラーはhttp://localhost:8080を言及し続け、異なるclient_secret.jsonファイルを使用し、flow_from_client_secretsに他のURIを指定しても、他のリダイレクトURIを認識しないようです。また、毎回スクリプトを実行する前にキャッシュをクリアし、クロームのシークレットモードで実行しています。何も助けてくれないようです。私はそれが何か単純でなければならないことを知っています。誰かがそれが何であるかを指摘できれば、私は非常に感謝しています!Python FlaskでOAuth Webアプリケーション用のGoogleカレンダーAPI

SCOPES = 'https://www.googleapis.com/auth/calendar' 
CLIENT_SECRET_FILE = 'client_secret_web.json' 
APPLICATION_NAME = 'Example Calendar Application' 
REDIRECT_URI = 'http://placeholder.com/oauth2callback' 

home_dir = os.path.expanduser('~') 
    credential_dir = os.path.join(home_dir, '.credentials') 
    if not os.path.exists(credential_dir): 
     os.makedirs(credential_dir) 
    redirect_uri="" 
    credential_path = os.path.join(credential_dir, 
            'calendar-python-quickstart.json') 

    store = Storage(credential_path) 
    credentials = store.get() 
    flow = client.flow_from_clientsecrets(self.CLIENT_SECRET_FILE, 
    self.SCOPES, prompt='consent', redirect_uri=self.REDIRECT_URI) 
    flow.user_agent = self.APPLICATION_NAME 
    if self.flags: 
     credentials = tools.run_flow(flow, store, self.flags) 
    else: # Needed only for compatibility with Python 2.6 
     credentials = tools.run(flow, store) 

     print('Storing credentials to ' + credential_path) 
    return credentials 
+0

再び権限を求めるように、〜/ .credentials /カレンダーのpython-quickstart.jsonで作成したファイルを削除する必要がありますと思いますか?私は正直に言うと、頭を壁にぶつけて、しばらくの間行ってきました。まだ動作している回答を追跡することができませんでした。 – Jake

答えて

0

私はこれに答えることができ、誰もがありますが、プログラムが

関連する問題