|
|
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
Привет всем! Есть контроллер, который редиректит пользователя по определенному урлу: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. Проблема в том, что после редиректа на сайт " http://www.site.ru", мой заголовок "transfer_header" теряется:( Как можно реализовать передачу хедера корректно? Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2012, 21:04:59 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
aliasnash, Попробуйте добавлять заголовки в postHandle(...) интерцептора, расширяющего HandlerInterceptorAdapter. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2012, 00:13:10 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
ivanov-void, а возможно это делать без участия интерцепторов? мне кажется все должно быть проще...хотя до меня не доходит как:( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2012, 00:22:49 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
aliasnash, Попробуйте тогда использовать forvard: При редиректе будет два запроса, поэтому установленные заголовки потеряются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2012, 01:17:58 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
for w ard: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2012, 01:24:29 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
ivanov-void, Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. не хочет работать. может что не правильно указываю? ошибка 404 (The requested resource () is not available.) возвращаю на redirect, норм отображается... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2012, 01:43:17 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
up ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2012, 14:14:36 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
forward работает только для ресурсов в рамках того же контекста. Если это другой сайт, то только redirect. Если это какой-то кастомный хидер, то через redirect его передать не выйдет. Даже куку на другой домен скорее всего не выставить. Только get параметры. Соответсвенно site.ru должен их понимать. В общем случае если бы можно было бы говорить браузеру клиента выставить любые заголовки для другого сайта, это было бы дырой в безопасности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2012, 14:19:47 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, ко мне заходит пользователь, со своими хедерами, стандартными (Referer и т.д.) мне его надо перекинуть на сторонний сайт, например http://yandex.ru и при этом передать все его заголовки, с которыми он пришел ко мне, я сам руками (в коде) никаких хедеров генерить не буду. Мне лишь надо передать все хедеры пользователя на сайт, куда я его редирекчу. Такое не реально? Это и есть кастомные хедеры? или вы имели ввиду под кастомными, это те которые я придумываю сам? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2012, 15:12:21 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
aliasnashко мне заходит пользователь, со своими хедерами, стандартными (Referer и т.д.) мне его надо перекинуть на сторонний сайт, например http://yandex.ru и при этом передать все его заголовки, с которыми он пришел ко мне, я сам руками (в коде) никаких хедеров генерить не буду. Мне лишь надо передать все хедеры пользователя на сайт, куда я его редирекчу. Такое не реально? Это и есть кастомные хедеры? или вы имели ввиду под кастомными, это те которые я придумываю сам? Смотрите есть 3 варианта. Redirect - это команда браузеру перейти на другой адрес. Хидеры так передать нельзя. Forward это команда request-диспатчеру отдать некий ресурс с этого же сервера. Т.е. ни на какой другой сайт клиент не попадёт. И третий вариант, это прокси. Надо из запроса пользователя сформировать новый, передать его на конечный сайт, получить отклик и отдать пользователю. Опять же пользователь не попадает на тот сайт напрямую. Он только получает его контент через вас. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2012, 15:22:35 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
Можно попробовать сформировать некий JavaScript, который отправит в браузере запрос с заголовками на целевой сайт, а потом, например, перегрузит страницу. Т.е. там уже по обстановке смотреть, что именно нужно. Но cross-domain JavaScript тоже штука скользкая. Заработает не везде. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2012, 15:38:49 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
Я не понял, о каких хидерах вы говорите. Смотря какая цель. Referer заполняется браузером чисто как информация откуда пришёл клиент. Зачем его менять? Это важная информация. По ней, часто судят откуда клиент пришёл. Счётчики работают. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2012, 15:46:07 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
упс. Второй параметр Ref это мнимый (исправленнй на JS) referrer. Код: javascript 1. Когда юзверь бродит внутри домена по твоим страницам document.referrer уже очищается. Мне он нужен был. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2012, 15:57:51 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
Petro123, Referer я просто для примера привел. Мне эти данные не требуется изменять, мне их нужно просто перенаправить на требуемый сайт. Т.е. все хедеры, которые присутствуют в request'е пользователя, мне нужно передать на сайт, куда я его редирекчу. Менять, или добавлять хедер мне не требуется Blazkowicz, Кажется что js это единственный вариант. спасиб ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2012, 16:58:01 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczМожно попробовать сформировать некий JavaScript, который отправит в браузере запрос с заголовками на целевой сайт, а потом, например, перегрузит страницу. Т.е. там уже по обстановке смотреть, что именно нужно. Но cross-domain JavaScript тоже штука скользкая. Заработает не везде. Blazkowicz, Вы можете помочь с таким скриптом? я просто даже пока не представляю как это сделать, или как сформировать правильно вопрос. Что мне требуется? у меня есть сайт http://site.ru, и по запросу от пользователя, я делаю редирект этого пользователя на сайт http://site.ru, при этом все headers, с которыми пришел ко мне пользователь, нужно перенаправить также на этот сайт. Если я делаю просто "redirect:", то все headers заменяются моими, с портала, что не правильно для меня. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2012, 11:46:34 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
aliasnash, Ты упорно молчишь Зачем? Имхо это Хак. Удачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2012, 14:38:06 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
aliasnashBlazkowicz, Вы можете помочь с таким скриптом? Не думаю. Там нет однозначного решения. Надо смотреть на целевой сайт. aliasnashя просто даже пока не представляю как это сделать, или как сформировать правильно вопрос. Что мне требуется? у меня есть сайт http://site.ru, и по запросу от пользователя, я делаю редирект этого пользователя на сайт http://site.ru, при этом все headers, с которыми пришел ко мне пользователь, нужно перенаправить также на этот сайт. Если я делаю просто "redirect:", то все headers заменяются моими, с портала, что не правильно для меня. Да, мы поняли. Только это всё попахивает. Вы хотите заставить перейти браузер на некую страницу, но при этом заставить, например, ту страницу думать, что клиент пришел не от вас, а откуда-то ещё? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2012, 14:48:20 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
Petro123aliasnash, Ты упорно молчишь Зачем? Имхо это Хак. Удачи. Молчу о чем? не совсем понял вопрос BlazkowiczДа, мы поняли. Только это всё попахивает. Вы хотите заставить перейти браузер на некую страницу, но при этом заставить, например, ту страницу думать, что клиент пришел не от вас, а откуда-то ещё? . верно, конечный сайт должен не знать, что пользователь прошелся через меня. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2012, 18:27:40 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
aliasnashверно, конечный сайт должен не знать, что пользователь прошелся через меня.Прокси-сервер не пробовали настраивать? Или что? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2012, 18:46:20 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorovaliasnashверно, конечный сайт должен не знать, что пользователь прошелся через меня.Прокси-сервер не пробовали настраивать? Или что? прокси не вариант, нужно чтобы в итоге пользователь работал напрямую с конечным сайтом, а не через проксю или всетаки это можно через проксю замутить? стоит еще nginx... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2012, 10:22:12 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
aliasnashпрокси не вариант, нужно чтобы в итоге пользователь работал напрямую с конечным сайтом, а не через проксю или всетаки это можно через проксю замутить? стоит еще nginx... То что вы хотите принципиально не возможно на HTTP. Т.к. forward не вариант в вашем случае, то варианта остаётся только два, как я и описал выше. JavaScript, который отправляет запрос на целевой сервер с нужными заголовками, а потом подменяет контент страницы. Прокси, который полностью качает весь трафик межнду целевым сайтом и клиентом. И там и там есть свои сложности и не всякий сервер разрешит такие хаки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2012, 10:25:51 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
Аффтар! Удивительно но ты неделю пишешь Что делать и ни разу Зачем делать. Кто у тебя Постановщик? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2012, 11:16:17 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
Blazkowiczaliasnashпрокси не вариант, нужно чтобы в итоге пользователь работал напрямую с конечным сайтом, а не через проксю или всетаки это можно через проксю замутить? стоит еще nginx... То что вы хотите принципиально не возможно на HTTP. Т.к. forward не вариант в вашем случае, то варианта остаётся только два, как я и описал выше. JavaScript, который отправляет запрос на целевой сервер с нужными заголовками, а потом подменяет контент страницы. Прокси, который полностью качает весь трафик межнду целевым сайтом и клиентом. И там и там есть свои сложности и не всякий сервер разрешит такие хаки. 1. client -> request+headers -> server script 2. server script -> response (location=myurl + headers from client) -> client 3. client (JS в фоне устанавливаю все headers) -> request (from location header) -> myurl для пользователя это один шаг вот так будет работать, так правильно? (возможно я плохо понимаю всю сложность) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2012, 11:19:49 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
aliasnash1. client -> request+headers -> server script 2. server script -> response (location=myurl + headers from client) -> client 3. client (JS в фоне устанавливаю все headers) -> request (from location header) -> myurl Шаг 2 не верный. location=myurl отправит клиента на целевой сервер без ваших хидеров. Надо отправить запрос с хидерами. Считать HTML и попробовать обновить контент сраницы через DOM. Тогда юзер будет видеть данные целевого сервера, но с вашим адресом. А потом уже перекинуть юзера на целевой сервер полностью. Это сработает не всегда и не везде. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2012, 11:35:17 |
|
||
|
spring mvc. как передать headers при redirect из контроллера?
|
|||
|---|---|---|---|
|
#18+
Blazkowiczaliasnash1. client -> request+headers -> server script 2. server script -> response (location=myurl + headers from client) -> client 3. client (JS в фоне устанавливаю все headers) -> request (from location header) -> myurl Шаг 2 не верный. location=myurl отправит клиента на целевой сервер без ваших хидеров. Надо отправить запрос с хидерами. Считать HTML и попробовать обновить контент сраницы через DOM. Тогда юзер будет видеть данные целевого сервера, но с вашим адресом. А потом уже перекинуть юзера на целевой сервер полностью. Это сработает не всегда и не везде. а вот так?? 1. client -> request+headers -> server script 2. server script -> response (temp_page.jsp?query_string=myurl + headers from client) -> client 3. client (JS в фоне устанавливаю все headers) -> request (from query_string) -> myurl т.е. во 2 шаге, я перенаправляю на страничку temp_page.jsp, на которой JSом я копирую все хедеры нужные, и отправляю пользователя на myurl из query_string ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2012, 11:44:55 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=37802511&tid=2131717]: |
0ms |
get settings: |
18ms |
get forum list: |
24ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
62ms |
get topic data: |
18ms |
get forum data: |
6ms |
get page messages: |
100ms |
get tp. blocked users: |
2ms |
| others: | 391ms |
| total: | 631ms |

| 0 / 0 |
