【问题标题】:URL session is not maintaining in androidURL会话未在android中维护
【发布时间】:2016-04-25 08:27:11
【问题描述】:

我正在开发 Android 项目,我们正在使用会话来检查用户是否已登录。为此,我们有如下网址。

 http://www.mywebservice.com/app/app.asmx/isUserLogged

当我们登录时,服务器上的会话有 userId。使用上面我们试图检查的是当前会话是否有 userId,但它总是说用户未登录。

下面是我们使用的代码

private void IsUserLogged(){
    mloading.setVisibility(View.VISIBLE);
    GlobalFunctions.DisableLayout(mainLayout);
    Log.d("ExecuteBidAuction", act.getString(R.string.IsUserLogged));
    StringRequest login = new StringRequest(
            act.getString(R.string.IsUserLogged),
            new Response.Listener<String>() {
                @Override
                public void onResponse(String response) {
                    if (response != null) {
                        Log.e("response IsUserLogged",""+response.replace("\"",""));
                    }
                }
            },
            new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError volleyError) {
                    mloading.setVisibility(View.INVISIBLE);
                    GlobalFunctions.EnableLayout(mainLayout);
                    if (volleyError.networkResponse != null) {
                        switch (volleyError.networkResponse.statusCode) {
                            case 200:
                                Toast.makeText(act, volleyError.getMessage(),
                                        Toast.LENGTH_LONG).show();
                                break;
                            case 500:
                                Toast.makeText(act,
                                        "Sorry, Internal Server Error",
                                        Toast.LENGTH_SHORT).show();
                                break;
                            case 404:
                                Toast.makeText(act, "Sorry, Not Found",
                                        Toast.LENGTH_SHORT).show();
                                break;
                            default:
                                break;
                        }
                    } else {
                        Toast.makeText(act, "Check Network Connection",
                                Toast.LENGTH_LONG).show();
                    }
                }
            }

    );
    login.setShouldCache(false);
    login.setRetryPolicy(new DefaultRetryPolicy(10 * 1000, 2, 1.0f));
    login.setTag(TAG);
    AppController.getInstance().addToRequestQueue(login, TAG);
}

有人能指出我为什么总是因为未登录而得到响应吗?即使我调用登录webservice然后调用isUserLogged,它仍然说用户没有登录。

谁能指出我做错了什么?

这在 iPhone 上完美运行

【问题讨论】:

    标签: android session url


    【解决方案1】:
    • 您可以从第一个响应中获取 cookie。
    • 然后使用connection.setRequestProperty("cookie",cookie_value);设置cookies

    我遇到了同样的问题并通过设置 cookie 值解决了。对我来说,它在 iPhone 应用程序中运行良好。

    【讨论】:

    • 你能发布从第一反应中获取烹饪的代码吗?
    猜你喜欢
    • 2011-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-28
    • 1970-01-01
    • 2014-10-27
    • 1970-01-01
    • 2011-05-20
    相关资源
    最近更新 更多