是否可以在JavaScript中创建会话变量?

sai*_*int 7 javascript

是否可以在JavaScript中创建和更新会话变量?就像在PHP中一样,我启动会话并初始化会话变量.

我正在使用PHP的一些JavaScript函数.

我只是JavaScript的初学者,所以请给我一些好书.

Que*_*tin 8

术语"会话变量"的通常含义是:"存储在服务器上的一些数据,通过令牌与用户的会话相关联".

假设您正在谈论客户端JavaScript,那么简短的答案是"不",因为它在错误的计算机上运行.

您可以使用JS向服务器发出HTTP请求,并让服务器端程序将数据存储在会话变量中.

您还可以使用JS将数据存储在cookie中(而不是设置到期时间,以便它在浏览器会话结束时到期)


mat*_*ven 5

好吧,看看会话的工作原理,不,它们无法使用javascript创建。但是,您可以向您的PHP文件发出AJAX请求以设置一个。

PHP:

<?php
session_start(); 
$_SESSION['mySession'] = 1;
?>
Run Code Online (Sandbox Code Playgroud)

JS:

var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "session_maker.php", true);

xmlhttp.onreadystatechange = function(){
    if(xmlhttp.readyState == 4 && xmlhttp.status == 200){
        alert("Done! Session created.");
    }
};
Run Code Online (Sandbox Code Playgroud)