繁体   English   中英

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

[英]Android App: Log-in to website, maintain session - Java

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

登录会话后应予以维护,并在整个会话期间,用户必须能够(使用标准HTML表单发布)发布到网站。

这种活动可能吗? 我可以为此使用任何特殊模块吗?

注意:该网站没有任何精美的API。 我也无法访问其源代码。

先感谢您。

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

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

连接到站点的简单功能如下。

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();
    }

}

我通过Singleton实现获得HttpClient的单个实例。 并在需要时使用它。

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

有些事情很明显,如果需要查找,可以在StackOverflow和Bing中找到很多说明。

我想就是这样:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM