Помощник
|
авторизационный токен |
Degradator
|
Сообщение
#1
|
||
|
|
||
|
|||
Arks |
27.4.2015, 23:22;
Ответить: Arks
Сообщение
#2
|
|
проблема с авторизационным токеном только у Вас в голове:
1. Куки передаются ровно также в заголовках. 2. Разницы для Вас как для разработчика где сохраняется токен - в памяти или в куках - нет и быть не должно. Об этом должны заботиться разработчики браузера. Исключение составляют девайсы которые не умеют работать с куками(антикварные SmartTV например или какие-нить Unity-поделки, разумеется работу с хидерами тоже) - там вообще единственный вариант фигачить все в QueryString при каждом запросе. Ничего плохого в этом нет, не делают так только потому что такие url-ы нельзя скопировать и "передать другу". Впрочем на антикварных SmartTV такой возможности и нет поэтому это является допустимым. Т.е. да, тут мы, фактически, думаем за пользователя. В случае со ссылками и window.open - от того что вы положите не в куку а в LocalStorage и SPA в окошке сделает аякс-запрос с хидерами вместо куки при отправке GET-запроса - ничего разительно не изменится. Все те же заголовки, повторюсь. Касательно PDF - очевидно есть 2 варианта - сохранение файла(для этого ответ сервера сопровождается соотв.заголовками и никакой extJS тут ни при чем), и второй - ответ сервера должен обрабатываться клиентом(браузером) - например на js как plainText или blob. Мне лично средства рендеринга pdf на js неизвестны. Вам судя по всему - тоже. В этом случае вы должны открыть окно с url-который в ответе сервера отдаст PDF, а не получить PDF как blob и как-то его куда-то передавать в соседнее окно(как Вы себе это представляете вообще?). Можно посмотреть только в сторону postMessage, но опять же при наличии средств рендеринга контента на клиенте. Например так можно поступить с blob картинки - для которой есть canvas. А вот pdf-редерилки в API html5 не встроены - потому что это проприетарщина. Так что рекомендую передохнуть и посмотреть на проблему с точки зрения здравого смысла и стандартов, а не с точки зрения какой-то ограниченной реализации(вижу вы зациклились в вопросе на ExtJS и js-файликах. Нет - они не умеют рендерить pdf) windowOpen - это get-запрос через адресную строку браузера. В таком get-запросе, в отличие от ajax - вы не управляете заголовками. |
|
|
Degradator
|
Сообщение
#3
|
|
|
Куки передаются ровно также в заголовках. Я понимаю, что от использования токена, куки никуда не деваются. Просто они становятся ненужными. Касательно PDF - очевидно есть 2 варианта - сохранение файла Вчера именно так и заткнул, но это не подходящий вариант (хотя, по моему мнению, он вполне нормальный, но заказчик хочет получить real-time pdf отчеты). не получить PDF как blob и как-то его куда-то передавать в соседнее окно(как Вы себе это представляете вообще?) Пробовал вчера это сделать, собственно, как и следовало ожидать, ничего не вышло. Думал что можно у документа поменять content-type и он сразу начнет все отображать. Есть вариант написать какую-то страницу, на которой будет реализация ajax функции, и которая будет принимать url страницы, которую надо открыть. Вроде как есть удобные либы для этого дела, типа superagent. Ну и собственно, читаю разные велосипеды с реализациями на токенах, их везде пихают в хидеры, и везде одни и те же проблемы (на рельсах, например).
|
|
|
||
|
Текстовая версия | Сейчас: 25.4.2024, 4:07 |