Добавляете куки с сервера Dart? - PullRequest
0 голосов
/ 26 марта 2019

Итак, у меня есть простой HttpServer, подобный этому:

import 'dart:io';
main() {
    HttpServer
        .bind("127.0.0.1", 80)
        .then((server) {
            server.listen((request) {             
                // Add cookie here how?                
                request.response.write("Howdy Darty cowboy!");
                request.response.close();
            });
        });    
}

Есть ли способ добавить куки в HttpResponse в Dart? Я вижу, как классы HttpResponse и HttpRequest имеют свойства cookies, и я могу получить к ним доступ, но не могу понять, как добавить cookie.

Попробовал это:

request.response.cookies = ["name", "value"];

Но получил эту ошибку:

Error: The setter 'cookies' isn't defined for the class 'HttpResponse'. 

Так что нет предопределенных методов для работы с куки? Нужно ли добавлять собственные HTTP-заголовки для добавления файлов cookie? Опять же, я вижу свойства заголовков в обоих классах, но нет сеттеров или геттеров!

Только начал играть с Дартом.

Примечание: пожалуйста, не связывайте мне внешние пакеты, я хотел бы сделать это с основными библиотеками Dart. Не хочу попасть в другой ад нпм! Удалил от Node.js причину npm, но похоже, что pub идентичен, просто использует yaml.

1 Ответ

1 голос
/ 26 марта 2019

request.response.cookies - это List<Cookie>, поэтому вам нужно add (вместо того, чтобы назначать его с равными).

Попробуйте:

request.response.cookies.add(Cookie('name', 'value'));
...