首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android应用:登录网站,维护会话- Java

Android应用:登录网站,维护会话- Java
EN

Stack Overflow用户
提问于 2012-02-14 09:15:07
回答 1查看 5.8K关注 0票数 2

我是新手的Android编程,并期待开发一个应用程序。该应用程序应该能够登录到一个网站通过填写HTML表单。

一旦登录到会议应该维护和通过会议,用户必须能够张贴(使用标准的HTML表单帖子)到网站。

这种类型的活动可能吗?有什么特殊的模块可以用来做这个吗?

注意:该网站没有任何花哨的API。我也无法接触到它的源代码。

提前谢谢你。

EN

回答 1

Stack Overflow用户

发布于 2012-02-23 14:08:23

一开始我不确定我在问什么,几次Bings之后,我找到了我需要的东西。

需要通过处理HTML Post表单登录到网站,保持会话并在网站上工作。

连接到站点的简单函数如下所示。

代码语言:javascript
复制
public static void connectToSite(HttpClient client, String username, String password){
    List<NameValuePair> arguments = new ArrayList<NameValuePair>();
    arguments.add(new BasicNameValuePair("email", username));
    arguments.add(new BasicNameValuePair("pword", password));
    arguments.add(new BasicNameValuePair("action", "modifyPALS"));
    arguments.add(new BasicNameValuePair("Submit", "Login"));

    HttpPost post = new HttpPost();

    try{
        post.setURI(new URI("http://www.my-target-website.com/login.php"));
        post.setEntity(new UrlEncodedFormEntity(arguments));
        client.execute(post);
        AppStatus s = getSiteConnectionStatus(client, site);
    }
    catch (URISyntaxException e){
        Log.e("LANKAFRIENDS", "SiteConnection.connectToSite():URISyntaxException");
    } 
    catch (ClientProtocolException e) {
        e.printStackTrace();
    } 
    catch (IOException e) {
        e.printStackTrace();
    }

}

我通过单例实现获得了HttpClient的一个实例。我想什么时候用就什么时候用。

表单属性存储为列表中的BasicNameVluePair。创建一个HttpPost对象,url是通过setURI方法提供的。然后将该列表作为一个实体提供给HttpPost对象,并最终执行。

一些非常明显的事情,如果你需要找的话,在StackOverflow和Bing中有很多指令。

我想就是这样了:)

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9270433

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档