java - 通过 android 将网络凭据传递给 Web 服务

标签 java android web-services credentials ksoap2

我一直在尝试连接需要凭据才能访问的 Web 服务,但没有成功。我正在使用 ksoap2 并且我知道代码可以工作(在将 Web 服务放在服务器上之前我已经将它与本地主机一起使用)我也知道服务器工作得很好,因为我制作了一个可以很好地访问服务器的 C# 程序。如果有人可以告诉我如何传递用户名和密码,我将非常感激。

编辑: 我的问题已得到解决,我将用于解决该问题的代码放在下面。

        List<HeaderProperty> headers = new ArrayList<HeaderProperty>();
    headers.add(new HeaderProperty("Authorization", "Basic "+Base64.encode("Username:Password".getBytes())));

    SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);

/

 androidHttpTransport.call(SOAP_ACTION, envelope,headers);

最佳答案

1.ksoap2有两个版本来访问Web服务。 SoapEnvelope.VER10 & SoapEnvelope.VER11 & SoapEnvelope.VER12,请检查;

2.您是否在AndroidManifast.xml中添加了权限?

<uses-permission android:name="android.permission.INTERNET" />

3.WebService是基于HTTP还是HTTPS? 在您的代码中,它们是 HttpTransportSE 或 HttpsServiceConnectionSE。

4.如果您的模拟器已连接互联网,请检查“3G”符号。

5.最后,这也与ksoap2.jar的版本有关。

关于java - 通过 android 将网络凭据传递给 Web 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8438629/

相关文章:

java - 不能在 Fragment 中使用 Toothpick.inject

Android:检测导航栏可见性

php - 使用 Android Developer、PHP 和 MySQL 的 Android 应用出现错误 : org. json.JSONException:状态无值

c# - 从 WSE 3.0 客户端请求中删除 WS-Addressing/WS-Security 部分

web-services - 如何在 wiremock 中匹配 JSON,它的字段值相同但顺序可能不同

如果从一台服务器而不是另一台服务器启动,Java Web Start 应用程序将被安全设置阻止

java - Spring Boot 忽略@JsonDeserialize 和@JsonSerialize

java - 为什么我的网址 localhost :8080////ProjectCtxt/mvc/template works?

java - Swing 拖放导致内存泄漏

java - 这段代码中的字节数组大小是多少?我可以让它更通用吗?