保存变量

时间:2016-02-22 13:22:41

标签: javascript jquery cookies

我有变量:var balance = 50; 我想知道是否有办法保存balance变量,以便在用户再次进入网页时保持其数量。 我该怎么办?我可以使用cookie执行此操作,是否需要将其放入MSSQL database

如果我可以用cookie设置它,我应该怎么做呢? 或者可以使用jquery/javascript脚本来完成,这可以保存日期。

3 个答案:

答案 0 :(得分:1)

您可以使用localStorage

var balance = 50;
localStorage.setItem("balance", balance); // Sets 50 in local storage
localStorage.getItem("balance"); // Returns 50

限制 - 如果用户访问其他浏览器/设备中的页面,则无效。

答案 1 :(得分:0)

您可以使用localStorage。

public class SampleScenario extends JUnitStories {

@Override
public Configuration configuration() {
    return new MostUsefulConfiguration()
            .useStoryLoader(new LoadFromClasspath(this.getClass()))
            .useParameterConverters(new ParameterConverters().addConverters(new ParameterConverters.ExamplesTableConverter(new ExamplesTableFactory(new LoadFromClasspath(this.getClass())))))
            .useStoryReporterBuilder(new StoryReporterBuilder().withDefaultFormats().withFormats(Format.CONSOLE, Format.HTML));
}

@Override
public InjectableStepsFactory stepsFactory() {
    ArrayList<Steps> stepFileList = new ArrayList<Steps>();
    stepFileList.add(new SampleSteps());

    return new InstanceStepsFactory(configuration(), stepFileList);
}

@Override
protected List<String> storyPaths() {
    return new StoryFinder().
            findPaths(CodeLocations.codeLocationFromClass(
                            this.getClass()),
                    Arrays.asList("**/sample_story.story"),
                    Arrays.asList(""));    }

@Override
@org.testng.annotations.Test
public void run() throws Throwable {
    super.run();
}
}

但是,您必须小心,因为从安全的角度来看,不依赖于此值,因为用户可以对其进行修改。

答案 2 :(得分:0)

你所谈论的是持久性的概念。您可以通过多种方式实现这一目标,但它们都依赖于在客户端计算机上保存一小部分数据。

1。使用会话

记住用户的最常用方法是在服务器上为他创建会话。在此会话中,您可以保存各种数据,例如余额。要将此数据从您的javascript中获取到您的会话,您可以向服务器发送包含客户端余额信息的发布请求。服务器通过客户端计算机上的会话cookie记住他正在处理哪个用户(每个会话包含一个唯一的ID)。

2。仅使用cookies

使用javascript,您可以非常轻松地设置Cookie:document.cookie = "balance=50"。显然,您将用客户平衡的任何值替换'50'。下次用户访问您的网页时,您可以使用var cookie = document.cookie再次阅读Cookie。这甚至可以在浏览器实例之间起作用。

3。使用数据库

如果您有办法识别用户(例如,他登录到您的网站,或通过会话),您可以将所需的任何数据保存到数据库中。关键是要识别您正在处理的用户。

我喜欢在创建网站时使用会话。我喜欢将大部分职责保留在我的服务器上,这样我只需要担心页面上显示的内容,而不是操纵数据等等。我建议您在需要保存时使用会话并发布用户余额。