我有一个返回多个cookie的服务器请求,如下所示:

这就是我将这些cookie存储到cookieManager的方式:
HttpURLConnection connection = ... ;
static java.net.CookieManager msCookieManager = new java.net.CookieManager();
msCookieManager.put(COOKIES_URI, connection.getHeaderFields());
Run Code Online (Sandbox Code Playgroud)
这就是我将这些cookie添加到下一个连接的方式:
connection.setRequestProperty("Cookie",
msCookieManager.getCookieStore().get(COOKIES_URI).toString());
Run Code Online (Sandbox Code Playgroud)
它是从cookieManager获取cookie的正确方法吗?我很确定有一个更好的...
我正在尝试一个简单的应用程序来阅读网站的HTML,并转换它以在Android中创建一个易于阅读的UI(这是一个学习android的exersize,而不是一个可用的应用程序).我遇到的问题是跨活动持久存在用户会话,然后在HttpClient一次召回时使用会话.
我想"正确地"这样做,推荐的方法似乎是使用CookieManager.然而,我遇到了这方面的问题 - 我似乎无法找到"正确"的方式来Cookie从一个单独的活动中CookieManager稍后实例化中使用它HttpClient.
当使用CookieManager我可以保存Cookie和Cookie随后在其他活动(见代码段2)的范围.我在请求页面时没有找到如何使用它(请参阅代码片段3).
够了,这里有一些代码.首先我的登录操作和Cookie存储:
private OnClickListener loginActionListener = new OnClickListener()
{
public void onClick(View v)
{
EditText usernameTextView = (EditText) findViewById(R.id.Username);
EditText passwordTextView = (EditText) findViewById(R.id.Password);
String username = usernameTextView.getText().toString();
String password = passwordTextView.getText().toString();
try {
HttpPost postMethod = new HttpPost(URI);
HttpParams params = new BasicHttpParams();
params.setParameter("mode", "login");
params.setParameter("autologin", true);
params.setParameter("username", username);
params.setParameter("password", password);
postMethod.setParams(params);
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpResponse response …Run Code Online (Sandbox Code Playgroud) 我正在开发一个需要阅读远程pdf文件并打开它的Adnroid应用程序,我看到谷歌文档可以使用此网址从pdf进行转换:
http://docs.google.com/viewer?url=
我遇到的问题是我的url检索文件需要将标头添加到http请求.有没有人提示如何将这个添加到谷歌文档的调用中?
我想在使用HttpGet连接到服务器时保留会话,我需要了解它如何处理cookie.
服务器开发人员说他自己处理所有cookie.我使用HttpGet请求访问服务器如下:InputStream isResponse = null;
HttpGet httpget = new HttpGet(strUrl);
HttpResponse response = mClient.execute(httpget);
HttpEntity entity = response.getEntity();
isResponse = entity.getContent();
responseBody = convertStreamToString(isResponse);
return responseBody;
Run Code Online (Sandbox Code Playgroud)
我应该做点什么吗?他是否自动将cookie放在我的设备上,并且HttpGet方法知道使用它以便使用cookie保持sessionID?
如何检查我的设备上是否存在cookie,以便知道会话是否"活着"?
如果我使用以下代码来获取cookie:
CookieStore cookieStore = new BasicCookieStore();
// Create local HTTP context
HttpContext localContext = new BasicHttpContext();
// Bind custom cookie store to the local context
localContext.setAttribute(ClientContext.COOKIE_STORE, cookieStore);
HttpGet httpget = new HttpGet(strUrl);
HttpResponse response = mClient.execute(httpget,localContext);
Run Code Online (Sandbox Code Playgroud)HttpGet是否仍像以前一样处理cookie?
无法弄清楚那一个 - 如何在HTTP GET请求中添加cookie?
List<Cookie> cookies = httpcPostlient.getCookieStore().getCookies();
Log.e("cookie_0", cookies.get(0).toString());
try {
HttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet();
// request <- how do I set cookies.get(0) into here?
request.setURI(new URI(myUrl));
HttpResponse httpGetResponse = client.execute(request);
}
Run Code Online (Sandbox Code Playgroud) 我正在构建一个Android应用程序,它必须将一些信息发送到我的mysql数据库.我试图实现的机制是基于JSON,php,Mysql组合.不幸的是,当涉及这些科目时,我不是老手.据我所知,php-Mysql连接始终是安全的 - 除了我之外没人能看到php脚本的来源,我在其中写了用户名和密码到我的数据库.现在是棘手的部分,我的PHP脚本位于Apache服务器上,它根本不受保护,因此任何人都可以触发它(甚至从桌面浏览器).我该如何防止这种情况?如何安全地从我的Android设备触发我的PHP脚本?谢谢