Java 通过android向web服务传递网络凭据

Java 通过android向web服务传递网络凭据,java,android,web-services,credentials,ksoap2,Java,Android,Web Services,Credentials,Ksoap2,我一直在尝试连接一个需要访问凭据的web服务,但没有成功。我使用的是ksoap2,我知道代码是有效的。在我将web服务放到服务器上之前,我已经在本地主机上使用过它。我还知道服务器工作得很好,因为我制作了一个访问服务器的c程序。如果有人能告诉我如何传递用户名和密码,我将非常感激 编辑: 我的问题已经解决了,我把我用来解决它的代码放在下面 List<HeaderProperty> headers = new ArrayList<HeaderProperty>(

我一直在尝试连接一个需要访问凭据的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);

1.ksoap2有两个版本可以访问web服务。 SoapEnvelope.VER10和SoapEnvelope.VER11和SoapEnvelope.VER12,请检查

2.您是否将权限添加到AndroidManifast.xml中

<uses-permission android:name="android.permission.INTERNET" />
3.Web服务是基于HTTP还是HTTPS? 在代码中,它们是HttpTransportSE或HttpsServiceConnectionSE

4.如果您的模拟器连接到internet,请检查3G符号


5.最后,这也会影响ksoap2.jar的版本。

我以前也做过类似的事情。我创建了一个Android应用程序,它使用ksoap访问web服务进行用户身份验证

你可以参考

检查我贴在那里的答案。这正是你想要的。我基本上是将用户凭据传递给我的Web服务进行身份验证

希望能有帮助


干杯

如果您只想发送用户名和密码,请检查Parth_90答案

但如果您想使用HTTPS,我认为这会有所帮助:
检查第一个答案。

也许这个类似的问题对您有所帮助:您是如何配置该服务以获取用户名和密码的?在我的情况下,该服务不需要凭据。在我工作的地方,服务器需要身份验证才能连接到它。上面的方法存储用户名并传入XML头。Parth_90拥有你似乎想要的东西和例子。如果您在应用程序上还需要什么,请告诉我您连接到服务以进行身份验证您有一个传入参数的函数,但是,在我的服务器上,在我能够访问web服务之前,服务器需要用户名和密码才能访问服务器。我已经有了证书,但我无法将用户名和密码传递给服务器。在您发送给我的链接中,他们收到了错误javax.net.ssl.SSLException:Not trusted server certificate我编译时没有收到错误当我到达服务器时问题就出现了。服务器用一个表示不允许您查看此页面的XML进行答复。很抱歉,我应该更清楚地了解我收到的错误。我能够访问一个服务,只是在服务器需要凭据时,我的错误发生了。
<uses-permission android:name="android.permission.INTERNET" />