0

デスクトップで実行され、Google フュージョン テーブルと対話する小さな Java インストール アプリケーションを作成していますが、401 の未承認エラーが発生し続けます。テーブルに接続してクエリを実行するために使用しているコードは次のとおりです。

/** Global instance of the HTTP transport. */
private static final HttpTransport HTTP_TRANSPORT = new NetHttpTransport();
/** Global instance of the JSON factory. */
private static final JsonFactory JSON_FACTORY = new JacksonFactory();

private static void insertData(String query) throws IOException {
    BasicAuthentication credential = new BasicAuthentication(username, password);
    fusiontables = new Fusiontables.Builder(HTTP_TRANSPORT, JSON_FACTORY, credential).setApplicationName(
            "Google-FusionTablesSample/1.0").build();
    Query q = fusiontables.query();
    Sql sql = q.sql(query);

    try {
        sql.execute();
    } catch (IllegalArgumentException e) {

    }
}

テーブルは自分のアカウントで作成され、アカウントのユーザー名とパスワードを使用しているため、間違ったログイン情報を使用しているわけではありません。Javaとoauthで何かをするのはこれが初めてなので、ここで何が間違っているのかを理解してくれる人はいますか?

4

1 に答える 1

0

基本認証(リクエストごとにユーザー名とパスワードをクリアで送信する)を行っているようですが、これはOAuthではありません。Fusion Table API は基本認証をサポートしていないと思います。

これは OAuth 2 ドキュメントです: https://developers.google.com/accounts/docs/OAuth2

パスワードには細心の注意を払い、API 呼び出しで送信しないでください。

于 2013-08-21T22:18:17.100 に答える