Предположим, у меня есть приложение gwt на большом веб-сайте, в котором множество куки-файлов, и что я не контролирую, какие файлы cookie устанавливаются. Предположим далее, что мое приложение gwt делает несколько вызовов REST для легкого API в том же домене (как и нужно делать), используя RequestBuilder
.Использовать RequestBuilder без отправки файлов cookie
RequestBuilder
достаточно обоснованно делает HTTP-запрос на сервер и отправляет все куки-файлы, которые он получил. Проблема в том, что файлы cookie иногда принимают более 90% размера запроса.
Да, было бы неплохо, если бы на веб-сайте не было установлено столько куки, но предположим, что это невозможно. Нет, удаление файлов cookie из браузера не является вариантом (это прекрасно, если они полностью недоступны/скрыты от приложения gwt, например, если бы я мог как-то убедить приложение gwt использовать отдельную пустую банку cookie).
Как убедить RequestBuilder
не, чтобы отправить куки?
Примечание. Решение этого вопроса для XmlHttpRequest
и его упаковка в коде GWT будет прекрасной.
Вещи, которые я обнаружил, что может быть полезным (в целом для JS, а не для GWT, но GWT в конечном счете использует XmlHttpRequest
):
- Cookie Monster: Наблюдатель, который крадет печенье из
XmlHttpRequest
до запроса отправлено. Я думаю, что это может быть специфический для Firefox, и это похоже на тяжелую работу. yourXMLHttpReq.channel.loadFlags |= Ci.nsIRequest.LOAD_ANONYMOUS;
: это было бы очень хорошо, за исключением того, что это требует операции, чтобы получить его в GWT, и я думаю, что его Firefox специфичен.- Этот question, который обрабатывает расширения Chrome, ответ на который должен либо удалить, либо прочитать все файлы cookie (не работает для долговременного приложения), либо использовать окно инкогнито (я хочу, чтобы это повлияло только на REST API).
Я предполагаю, что Web Storage (HTTP: //www.w3schools.com/html/html5_webstorage.asp) не является для вас вариантом. Но я хочу упомянуть об этом, потому что это другой подход к решению этой проблемы. Объекты хранения не отправляются на сервер и наоборот с каждым запросом. – Charmin
@Charmin грустно нет. Типичная ситуация заключается в том, что приложение находится на 'app.foo.com', и существует файл поддоменов cookie-fest .foo.com. – abligh