2012-05-12 15 views
3

私のコンピュータのthis postからMichaelによってbigqueryスニペットを試したときに「401 Unauthorized」という問題が発生しました。 ryguyrgの示唆したように、私はコンピュータの時刻を同期させ(「今すぐ更新」をクリックすると)、コードはうまくいきましたが、問題は、しばらくしてから数分後にコードを書き換えたときに401エラーサービスアカウントを使用しているGoogle Bigquery 401の不正なエラー

私のコンピュータがうまく動作していることは間違いありません。時間は数ミリ秒を超えて尊重されるべきではないと確信しています。 。?サーバーにそう正確に何が問題を引き起こしている私は、要求の前に、コードからの時間を同期さために何かをしようとか、周りに良い方法はありシャル

以下は参照用に401エラーメッセージです:?

Exception in thread "main" com.google.api.client.googleapis.json.GoogleJsonResponseException: 401 Unauthorized 
    at com.google.api.client.googleapis.json.GoogleJsonResponseException.from(GoogleJsonResponseException.java:159) 
    at com.google.api.client.googleapis.json.GoogleJsonResponseException.execute(GoogleJsonResponseException.java:187) 
    at com.google.api.client.googleapis.services.GoogleClient.executeUnparsed(GoogleClient.java:115) 
    at com.google.api.client.http.json.JsonHttpRequest.executeUnparsed(JsonHttpRequest.java:112) 
    at com.google.api.services.bigquery.Bigquery$Jobs$Insert.executeUnparsed(Bigquery.java:1418) 
    at com.google.api.services.bigquery.Bigquery$Jobs$Insert.execute(Bigquery.java:1442) 
    at BigQueryJavaServiceAccount.main(BigQueryJavaServiceAccount.java:83) 

答えて

3

私が最初にあなたの時間はntpdのを使用して同期していること、そしてそれはあなたの正しいタイムゾーンに設定されていることを確認します:http://www.ntp.org/

1

カップルミリ秒がそれに影響を与えるべきではありません。

最も大きなチャンスは、リクエストの時間が未来の場合です.Googleのサーバーは、これらのリクエストを最も確実に拒否します。

私はマイケルのNTPによる同期の提案に同意します。

またわずかより寛大当社のOAuthサービスを作るに見ることができます - それは、セキュリティとユーザビリティ

のバランスをとるために、常に厳しいです
関連する問題