Dart是否支持PHP,如$ _SESSION(会话)?

时间:2012-12-23 13:54:03

标签: dart

服务器端Dart是否支持PHP中的会话:

<?php

session_start();

$_SESSION['fruit'] = 'apple';

数据在页面加载时保留。

1 个答案:

答案 0 :(得分:5)

是Dart支持与PHP差不多的会话。

让我们编写一个简单的程序,将苹果和香蕉之间的水果随机化,并将选择保存到会话中。

import 'dart:io';
import 'dart:math';

// A method that returns "apple" or "banana" randomly.
String getRandomFruit() => new Random().nextBool() ? 'apple' : 'banana';

main() {
  var server = new HttpServer();

  server.defaultRequestHandler = (HttpRequest req, HttpResponse res) {
    // Initialize session with an empty {} object as data.
    var session = req.session((s) => s.data = {});

    // Save fruit to session if there is nothing in there.
    if (session.data['fruit'] == null)
      session.data['fruit'] = getRandomFruit();

    // Retrieve fruit from the session.
    var fruit = session.data['fruit'];

    res.outputStream.writeString("Your fruit: $fruit", Encoding.UTF_8);
    res.outputStream.close();
  };

  server.listen('127.0.0.1', 80);
}

现在,当您运行代码并转到http://localhost时,只要会话保持打开状态,每次看到相同的水果,因为我们会将水果保存到会话中。

注意: