如何使用身份验证从Web服务中使用xml?

时间:2010-02-08 13:06:11

标签: android web-services rest restful-authentication

我正在尝试从我的Android应用程序调用REST服务(需要身份验证)。我已经成功地使用不需要身份验证的URL,但我不确定用于身份验证的正确方法。我目前正在使用Sax Parser消耗xml并像这样调用url.openStream()

QuestionHandler myQuestionHandler = new QuestionHandler();
XMLReader xr = SAXParserFactory.newInstance().newSAXParser().getXMLReader();
xr.setContentHandler(myQuestionHandler);
xr.parse(new InputSource(new URL('MyUnAuthenticatedURL').openStream()));

handler.post(new Runnable() {
  public void run() {
    recentQuestions = myQuestionHandler.getResultList();
    loadQuestions = false;
    fillData();
  }
});

我读到我应该使用org.apache.http.impl.client.DefaultHttpClient来利用默认会话cookie的HTTP基本身份验证,但我不明白应该如何与Sax Parser一起完成。

这里的主要目标是我想调用一个需要经过身份验证的用户名的URL,并且如果用户名通过密码验证,则该URL返回XML。

1 个答案:

答案 0 :(得分:0)

我相信我在ChandlerQE完成了你所要求的。有关run()方法,请参阅ChandlerQE.java。代码并不漂亮,但基本上我使用httpclient发布和获取,并使用SAXParser解析返回的XML。

相关问题