我想在登录PhoneGap项目后获得一个个人页面。登录部分通过JQuery $.post
进行处理。接下来,应用程序应该加载个人JSON时间表(服务器读取cookie JSESSIONID)。
var login = "example_user";
var password= "example_password";
$.post('https://example.com/login.php', {wu_loginname:login,wu_password:password}, function(data) {
//load the schedule.php page with the cookie received on the login.php page.
}
是否可以使用PhoneGap(或JQuery)获取并编写JSESSIONID cookie?
只要它不是仅HTTP的cookie(http://blog.codinghorror.com/protecting-your-cookies-httponly/),它应该很容易用javascript读取,请参阅:"在javascript中按名称读取cookie的最短函数是什么?"了解如何用javascript读取cookie或使用插件的代码。如果JSESSIONID仅为服务器,那么您将不得不编写或找到一个插件,该插件可以拦截网络调用以从标头中检索数据。
编辑:获取cookie
function readCookie(name) {
var allCookies = document.cookie.split('; ');
var cookies = {};
for (var i = allCookies.length - 1; i >= 0; i--) {
var splitCookie = allCookies[i].split('=');
cookies[splitCookie[0]] = splitCookie[1];
}
return cookies[name];
}
var login = "example_user";
var password= "example_password";
$.post('https://example.com/login.php', {wu_loginname:login,wu_password:password}, function(data) {
var sessId = getCookie('JSESSIONID');
// Do something with the cookie
}
找到了解决方案,简单如下:|。
var login = "example_user";
var password= "example_password";
$.post('https://example.com/login.php', {wu_loginname:login,wu_password:password}, function(data) {
$.get("https://example.com/schedule.php", function(result){
alert(JSON.stringify(result));
});
}