HttpSession class abstract interface

The HttpRequest.session of an HttpRequest.

Stores arbitrary information about a browser session on the server. This information is stored in memory so it will be lost when the server exits.

A cookie named "DARTSESSID" is stored on the browser to associate the HttpSession with a particular client.

import 'dart:io';

void main() async {
  HttpServer.bind("localhost", 8080).then((server) {
    server.listen((request) {
      final session = request.session;
      if (session.isNew) {
        session["cart"] = [];
      }
      if (request.uri.queryParameters['buy'] != null) {
        final item = request.uri.queryParameters['buy'];
        session["cart"].add(item);
      }
      session["cart"].cast<String>().forEach(request.response.writeln);
      request.response.close();
    });
  });
}
Implemented types

Properties

entries → Iterable<MapEntry>
The map entries of this Map.
no setterinherited
hashCode → int
The hash code for this object.
no setterinherited
id → String
The id of the current session.
no setter
isEmpty → bool
Whether there is no key/value pair in the map.
no setterinherited
isNew → bool
Whether the session has not yet been sent to the client.
no setter
isNotEmpty → bool
Whether there is at least one key/value pair in the map.
no setterinherited
keys → Iterable
The keys of this Map.
no setterinherited
length → int
The number of key/value pairs in the map.
no setterinherited
onTimeout ← void Function()
Sets a callback that will be called when the session is timed out.
no getter
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
values → Iterable
The values of this Map.
no setterinherited

Methods

addAll(Map other) → void
Adds all key/value pairs of other to this map.
inherited
addEntries(Iterable<MapEntry> newEntries) → void
Adds all key/value pairs of newEntries to this map.
inherited
cast<RK, RV>() → Map<RK, RV>
Provides a view of this map as having RK keys and RV instances, if necessary.
inherited
clear() → void
Removes all entries from the map.
inherited
containsKey(Object? key) → bool
Whether this map contains the given key.
inherited
containsValue(Object? value) → bool
Whether this map contains the given value.
inherited
destroy() → void
Destroys the session.
forEach(void action(dynamic key, dynamic value)) → void
Applies action to each key/value pair of the map.
inherited
map<K2, V2>(MapEntry<K2, V2> convert(dynamic key, dynamic value)) → Map<K2, V2>
Returns a new map where all entries of this map are transformed by the given convert function.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
putIfAbsent(dynamic key, dynamic ifAbsent()) → dynamic
Look up the value of key, or add a new entry if it isn't there.
inherited
remove(Object? key) → dynamic
Removes key and its associated value, if present, from the map.
inherited
removeWhere(bool test(dynamic key, dynamic value)) → void
Removes all entries of this map that satisfy the given test.
inherited
toString() → String
A string representation of this object.
inherited
update(dynamic key, dynamic update(dynamic value), {dynamic ifAbsent()?}) → dynamic
Updates the value for the provided key.
inherited
updateAll(dynamic update(dynamic key, dynamic value)) → void
Updates all values.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited
operator [](Object? key) → dynamic
The value for the given key, or null if key is not in the map.
inherited
operator []=(dynamic key, dynamic value) → void
Associates the key with the given value.
inherited