android - Web 服务 Http 身份验证 - Android 上的 KSOAP2

标签 android web-services authentication http-headers android-ksoap2

<分区>

我已经在网上搜索了一段时间,但未能找到适合我的问题的解决方案。这篇文章也没有真正的帮助,因为使用的类和方法在 ksoap2 for android 中不存在:Basic HTTP authentication using KSOAP for android

我正在尝试访问我在 sap soa 管理器中设置的 SAP 网络服务。 Web 服务需要在 http header 中进行基本身份验证。通过 soapUI 访问此 Web 服务不是问题,因为可以在那里设置 http 身份验证。

我的问题: 我想使用 Android 设备访问 Web 服务,并且我想为 Android 使用 KSOAP2,因为我已经对该库有一些经验。我的问题是我不知道如何向网络服务进行身份验证?

有没有人遇到过类似的问题,知道怎么解决的? 如果您能帮助我,我将不胜感激!

最佳答案

我希望还不算太晚。这就是我使用 KSOAP 访问 SAP 网络服务的方式:

List<HeaderProperty> headers = new ArrayList<HeaderProperty>();
headers.add(new HeaderProperty("Authorization", "Basic XXXXXXXXXX"));
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
Object result = null;               
final Object response = androidHttpTransport.call(SOAP_ACTION, envelope, headers);

用您的用户名和密码的编码哈希替换 XXXXXXXX。要获得它,只需查看 soapUI 原始 header 请求。希望能帮助到你。

关于android - Web 服务 Http 身份验证 - Android 上的 KSOAP2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5501743/

相关文章:

java - 安心服务

java - Unmarshal 在具有 List<T> 字段的泛型上生成空字段

android - GestureDetector onScroll 的滚动延迟

android - WebView 点击打开手机浏览器

iphone - 在 iPhone 上使用 Objective-C 使用 WCF Web 服务

android - 在 Android 应用程序中注册表格(注册)以检查用户名的唯一性

ubuntu - 我在 Ubuntu 19.10 中所做的一切都需要身份验证

android - overridePendingTransition 不适用于 Android 设备

java - 尝试在空对象引用上调用虚拟方法 'int android.webkit.WebView.loadUrl()'

php - 仅限管理员用户的 CodeIgniter 限制页面