我在尝试与服务器进行身份验证时遇到了一些问题。
当我手动尝试通过Google插件(如Postman)设置cookie时,它可以正常工作,但是当通过Android设备或模拟器进行设置时却不能正常工作。
以下是我处理这部分的代码:
String url = "www.thisismyendpoint.com";
String ci_session = "ci_session=token";
CookieStore cookieStore = new BasicCookieStore();
BasicClientCookie stdCookie = new BasicClientCookie("Cookie",ci_session);
cookieStore.addCookie(stdCookie);
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpContext localContext = new BasicHttpContext();
localContext.setAttribute(ClientContext.COOKIE_STORE,
cookieStore);
HttpPost httppost = new HttpPost(url);
HttpResponse response = httpClient.execute(httppost, localContext);
这是我的日志记录中的响应:
02-19 16:43:47.149: D/response(27539): response: <div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">
02-19 16:43:47.149: D/response(27539): <h4>A PHP Error was encountered</h4>
02-19 16:43:47.149: D/response(27539): <p>Severity: Notice</p>
02-19 16:43:47.149: D/response(27539): <p>Message: Undefined index: ci_session</p>
02-19 16:43:47.149: D/response(27539): <p>Filename: controllers/test.php</p>
02-19 16:43:47.149: D/response(27539): <p>Line Number: 28</p>
02-19 16:43:47.149: D/response(27539): </div>
我是否做错了什么?我试过将ci_session设置到请求头中,但同样没有起作用。请给予建议。谢谢!