質問

私はこれがどのように機能するかについて非常に混乱しています。私はこのようなものを使ってみました:

    con = (HttpURLConnection) url2.openConnection();
    con.setReadTimeout(10000);
    con.setInstanceFollowRedirects(true);
    con.setAllowUserInteraction(true);
    con.setDoOutput(true);
    con.setDoInput(true);
        Authenticator.setDefault(new MyAuthenticator());
    con.connect();


class MyAuthenticator extends Authenticator {

      protected PasswordAuthentication getPasswordAuthentication() {
        return new PasswordAuthentication("myUser", "MyPassword".toCharArray());
      }
    }

この方法で返された401エラーが発生しているので、明らかにポイントが欠けています。これによれば チャート NTLMV2はJRE 6でサポートする必要があります。私の混乱は、これがAndroidで実行されているという事実にあります。スローされた例外からのスタックトレース getOutputStream Apacheの実装が表示されます HttpURLConnection 参照される。

私の研究で見つけたことから、Apacheはライセンスの問題のためにNTLMV2プロトコルを含めることができません。これがAndroidで動作しない理由ですか?

いずれにせよ、私はこれがAndroidだけでなくJavaでどのように行われるかを知りたいです。

役に立ちましたか?

解決

実装されていません。この問題をチェックしてください: http://code.google.com/p/android/issues/detail?id=4962. 。また、AndroidがJRE 6ではないという事実も考慮してください。これは、標準Javaの変更されたバージョンです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top