3

我正在使用 ksoap2 进行 Web 服务方法调用。首先,用户必须登录。我希望 Web 服务中的其他方法只能在登录后调用。但我不能那样做。因为我在网络服务中没有任何会话。我不知道如何在网络服务中做到这一点。Web 服务如何知道用户已经登录 Android 应用程序?您有任何想法、会话或 cookie 吗 :(。感谢您阅读我的问题。这是我在网络服务中的代码

public class Login {
String message;
Connection conn;
String url;
ResultSet rs;
Statement stmt;
public String login(String username, String password) {
    try {
        Class.forName("org.postgresql.Driver");
        url = "jdbc:postgresql://localhost:5432/FirstDB";
        conn = DriverManager.getConnection(
                url, "postgres",
                "root");
        stmt = conn.createStatement();
        rs = stmt.executeQuery("SELECT * From account Where username = '"+ username + "'and password = '" + password +"'");
        if ( rs.next() ) {
            message = "true";
        } else {
            message = "false";
        }
    } catch (Exception e) {
        System.err.println("Got an exception! ");
        System.err.println(e.getMessage());
    }
    return message;
}

public String Test() {
    if(message.equals("true")) 
    {
        return "abc";
    }
    return "bdf";
}

}

在安卓应用中。首先我调用方法 login(),然后调用方法 Test()。结果总是“bdf”。

4

1 回答 1

1

要在 Android 应用程序中维护会话,您可以使用共享首选项。

例如,请参阅使用共享首选项的 Android 用户会话管理

或者您可以尝试以这种方式在android中维护会话(应用程序在服务器端保持身份验证)

于 2012-10-25T03:55:25.860 回答