android-async-http / android-async-http

An asynchronous, callback-based Http client for Android built on top of Apache's HttpClient libraries.
https://github.com/android-async-http/android-async-http#this-project-is-no-longer-maintained-and-is-currently-deprecated-and-insecure-to-use
Apache License 2.0
10.63k stars 4.09k forks source link

HTTP Authentication schemes (NTLM, SPNEGO/Negotiate) #540

Open PenaPP opened 10 years ago

PenaPP commented 10 years ago

Are you going to support other authentication schemes from http://hc.apache.org/httpcomponents-client-4.2.x/tutorial/html/authentication.html#d5e870? Right now just Basic is supported. Negotiate is crucial for my current project, so I would really appreciate that ;) Thank you

gongzunpan commented 10 years ago

印象笔记无法提交笔记,原因如下:

本月帐户上传流量已经达到上限。

原消息详情: 来自:PenaPP <notifications@github.com> 发送到:gongzunpan.e099425@m.yinxiang.com 全部收件人:loopj/android-async-http <android-async-http@noreply.github.com> 主题:[android-async-http] HTTP Authentication schemes (NTLM, SPNEGO/Negotiate) (#540)

为了防止邮件过多,接下来的360分钟内,你将不会收到报错回复。

升级到印象笔记高级帐户,可以发送的邮件数量将从50封提升到200封。 https://app.yinxiang.com/Checkout.action?origin=email%2Dcommerce

smarek commented 10 years ago

Yes, we're currently working on 1.5 branch with full httpclient-android support, thus complete support for all underlying functions, however it's now in beta, so it depends on you whether you'll wait, contribute, or switch over to another library

PenaPP commented 10 years ago

Amazing :) That's even better than I expected. I'll try to wait because I have a lot of other work anyways and I'll come back later ;)

smarek commented 10 years ago

As of now, you should be able to provide specific authorization over IAsyncHttpClientOptions and IAsyncHttpClient interface methods. I'll add more documentation on this and close the issue after it's cleared up.

xiasenhai commented 10 years ago

great!

gongzunpan commented 10 years ago

印象笔记无法提交笔记,原因如下:

本月帐户上传流量已经达到上限。

原消息详情: 来自:Qinworks <notifications@github.com> 发送到:gongzunpan.e099425@m.yinxiang.com 全部收件人:loopj/android-async-http <android-async-http@noreply.github.com>; zunpan <gongzunpan@gmail.com> 主题:Re: [android-async-http] HTTP Authentication schemes (NTLM, SPNEGO/Negotiate) (#540)

为了防止邮件过多,接下来的360分钟内,你将不会收到报错回复。

升级到印象笔记高级帐户,可以发送的邮件数量将从50封提升到200封。 https://app.yinxiang.com/Checkout.action?origin=email%2Dcommerce

CeRBeR666 commented 10 years ago

Any improvent on this issue ? I need ntlm auth in httpclient

Thank you !

smarek commented 9 years ago

This issue is fixed partially in 1.4.9 which uses upstream 4.3.3 HttpClient with full implementation of NTLM auth scheme.

Regarding other schemes (SPNego, Kerberos, GGS, Negotiate), I'd be happy with your contribution on getting Android NDK compilation of related kerberos-android-ndk project working and implemented with project, which is currently providing HttpClient for this library, see https://github.com/smarek/httpclient-android

Also mentioned kerberos-android-ndk project is this one: https://github.com/cconlon/kerberos-android-ndk.git

smarek commented 9 years ago

Heads up, we now have available 4.4.1.1 version, which originates from upstream 4.4.1 version, and there is only the NDK build to be resolved, to fix this issue, I'm searching for contributors on this topic. Thank you!

harleyknd1 commented 6 years ago

For those who are reading this and are struggling with NTLM support, you can use NTLM by adding msebera to your build.gradle dependencies (api 'cz.msebera.android:httpclient:4.3.6') and using the following code:

            AsyncHttpClient client = new AsyncHttpClient();
            Credentials credentials = new NTCredentials(USERNAME,PASSWORD,"WORKSTATION","DOMAIN");

            String request = "http://your_url_here";
            client.setUserAgent("USER AGENT HERE");
            client.setCredentials(AuthScope.ANY,credentials);
//The rest of your code