我已经使用 jersey 框架和 java 在 netbean IDE 中编写了 REST Web 服务。对于每个请求用户都需要提供用户名和密码,我知道身份验证不好。
使用curl命令,例如:
curl -u 用户名:密码 -X PUThttp://localhsot:8080/用户 http://localhsot:8080/user
现在我想从 android 类调用 REST Web 服务。我应该写什么?我是安卓新手。我有一个使用 DefaultHttpClient 和 CredentialUsernameAndPassword 的 android 类。
但是当我在 eclipse 中运行时,有时会出现运行时异常或 sdk 异常。
有人给我示例代码和建议吗?
thanks
您使用基本身份验证吗?如果是这样:使用这个。
if (username != null && password != null) {
client.getCredentialsProvider().setCredentials(
new AuthScope(null, -1),
new UsernamePasswordCredentials(username, password));
}
或者您可以将它们添加到标头中 setHeader("Authentication", "Basic "+Base64EncodedString(username,pass);
您正在做的是使用代理身份验证。为什么?
这篇文章也可能在某种程度上有所帮助:
link http://androhacks.blogspot.com/2011/02/proxy-settings-in-android-mobiles-with.html
-u 也代表 ntlm 授权,所以也许也研究一下。有一些主题说它在 Android 或其他设备上不受支持,但我确信如果您需要它,您可以找到解决方法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)