|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
Имеем : сервер обрабатывает параметры в имени которых есть слеш: типа "Account/SubAccount", "Vendor/VendorAddress/ZIPCode" и т.п. В данный момент форма имеет метод POST , на ней лежат контролы, имена которых со слешом. Затем форма сабмитится с адресом скрипта, который всё и обрабатывает. Есть 2 больших недостаток - сабмит формы приводит к тому, что страница переходит по ссылке из ACTION и кроме того, я не умею респонз нормально отрабатывать. Хочется перейти на метод GET чтобы потом использовать объект типа MSXML2.XMLHTTP ... Но записать строку вида "myserver/myfile.jsp?Account/SubAccount=SUB000" я не могу... Как мне быть? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 10:11 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
MGR Имеем : сервер обрабатывает параметры в имени которых есть слеш: типа "Account/SubAccount", "Vendor/VendorAddress/ZIPCode" и т.п. В данный момент форма имеет метод POST , на ней лежат контролы, имена которых со слешом. Затем форма сабмитится с адресом скрипта, который всё и обрабатывает. Есть 2 больших недостаток - сабмит формы приводит к тому, что страница переходит по ссылке из ACTION и кроме того, я не умею респонз нормально отрабатывать. Хочется перейти на метод GET чтобы потом использовать объект типа MSXML2.XMLHTTP ... Но записать строку вида "myserver/myfile.jsp?Account/SubAccount=SUB000" я не могу... Как мне быть? если у формы в атрибуте method указать метод post, то какие проблемы? при сабмите все слэши заменятся на допустимые в урле символы. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 11:13 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
ЯЕсть 2 больших недостаток - сабмит формы приводит к тому, что страница переходит по ссылке из ACTION и кроме того, я не умею респонз нормально отрабатывать. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 13:25 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
MGR ЯЕсть 2 больших недостаток - сабмит формы приводит к тому, что страница переходит по ссылке из ACTION и кроме того, я не умею респонз нормально отрабатывать. и? во-первых, в запросе GET если указать в одном из параметров так: http://www.eee.ru/myservlet?somepath=content/music/hardcore/1.mid то на стороне сервлета: Код: plaintext 1. 2.
как думаешь - что будет в переменной somepath? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 13:34 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
MGR ЯЕсть 2 больших недостаток - сабмит формы приводит к тому, что страница переходит по ссылке из ACTION и кроме того, я не умею респонз нормально отрабатывать. 1. ну и что? перейдет по этой ссылке и что? пусть перейдет например на сервлет, который, обработав запрос, сделает редирект туда куда надо. 2. это как? а если методом GET - умеешь? и в чем разница обработки респонза при запросах GET и POST? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 13:36 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
Во-первых сразу скажу, я в этом сильно новичок... Во-вторых, я в принципе не могу править JavaBeans, хотя JSP править могу, но не рекомендуется... Далее - с помощью метода GET я могу работать с помощью технологии описанной в примере . Как это сделать с помощью POST - я не знаю (см. "во-первых") Если будут какие предложения - с радостью выслушаю ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 14:47 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
тогда это для тебя: А.Гpacoff в запросе GET если указать в одном из параметров так: http://www.eee.ru/myservlet?somepath=content/music/hardcore/1.mid то на стороне сервлета: Код: plaintext 1. 2.
в переменной somepath будет не что иное как "content/music/hardcore/1.mid" ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 14:55 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
еще тут посмотри http://www.sources.ru/java/java_rbc.shtml ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 15:18 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
Попробовал... Оказалось дело было не в Слешах - метод GET просто не даёт никакого результата :( Ни вышеописанным способом - ни стандартно (через сабмит формы) Понимаю, что по телефону аппендицит не вырезают, но может подскажите, где копать (в какую сторону)? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 15:32 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
хочешь сказать, что это не работает? html-документ: Код: plaintext 1. 2. 3. 4. 5.
some.jsp: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
при клике на ссылку "ссылка" в html-документе, идет GET-запрос на some.jsp, который в процессе своем генерит еще один html-документ и выводит в нужном месте (<%=somePath%>) значение параметра запроса somepath. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 16:28 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
а. фсё понял. речь идет об ИМЕНАХ параметров. фсё. ушел в децкий сад. учицца четать. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 16:29 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
Точно! :) Именно об именах. Ты это - возвращайся! :) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 16:53 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
Странные какие-то вопросы. На то ты кнопку сабмит и жмёшь, что бы ACTION получил твою форму и вернул ответ :) Ничего удивительного, что он открывается. Если отсылать форму методом get, то получишь сместо '/' послед-ть %5С в имени переменной. Если методом post теже яйца, вид сбоку. На стороне сервера HttpServletRequest честно перевернёт %5C в "/"... Где проблемы-то? :) Похоже грабли не в имени переменной, а в чём-то другом. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 17:21 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
не в %5С, а в %2F. Слеши перепутал ^_^ ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 17:24 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
Знал бы в чём проблема. POST - работает GET - нет. В жавабинах разобраться не могу, с трудом облегчил JSP от лишнего "хлама" А и коды вместо слеша подставлял - не помогает. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 17:27 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
Покажи тогда код, который request разбирает. Может там спицефичный способ какой-то :) И пост и гет - оба работают исправно... У метода get так же есть ограничение на длинну "хвоста" прицепляемого к url, может в этом проблема? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 17:32 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
или jsp-шка, грубо говоря, только doPost() обрабатывает. короче говоря, живой код решает :) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 17:33 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
Значит вот такой мой код: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
Может слишком длинный действительно... Это кстати пример не самый длинный - есть и в 2-3-4 раза длиннее. Второй вариант подразумевает вызов сабмита: Код: plaintext 1. 2. 3.
Код JSP-шки такой вот (начало - все остальное не важно): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 17:56 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
С java всё ок. Напрягает длинна строки url = 283 символа, ради эксперимента, я бы по короче что-нибудь вставил, но это только из-за моего ламерста в вопросе sybase %) Почему-то во втором варинте стоит https, а в первом http... или это опечатка? Жалко я у себя не могу такое запустить, посмотреть :) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2004, 18:44 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
NotGonnaGetUs Напрягает длинна строки url = 283 символа, ради эксперимента, я бы по короче что-нибудь вставил Я вот прикинул - это минимум, что у меня есть. Другие варианты ещё длиннее. Значит видимо GET мне не светит? А как всё-таки сделать POST без того чтобы отобразилась страница на сервере? но это только из-за моего ламерста в вопросе sybase %) А какое отношение это имеет к сайбейзу? Ссылку, что я приводил, я привёл для примера технологии, которой хотел воспользоваться - через объект XMLHTTP Как бы его (или не его) прикрутить к POST Почему-то во втором варинте стоит https, а в первом http... или это опечатка? Нет, просто существует по 2 варианта - один секьюрный, другой обычный. По невнимательности я скопировал первый пример из обычного варианта, а второй - из секьюрного. Жалко я у себя не могу такое запустить, посмотреть :) Да ну, чо там... Всё просто - попытка работы с апачем и MSSQL... Да и то, драконю существующее приложение для своих нужд. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2004, 08:20 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
думаю, ради теста, можно всё-таки укоротить строчку(убрать оттуда / или заменить его на %xx), что бы убедиться что грабли не в её длинне. (GET позволяет передавать до нескольких килобайт, если я не ошибаюсь.) автор>> Значит видимо GET мне не светит? >> А как всё-таки сделать POST без того чтобы отобразилась страница на >> сервере? Расскажи, как ты ухитряешься GET послать со странички открытой в браузере без того, что бы ответ с сервера не приходил :) Я не понимаю такого. И не понимаю как такая потребность может возникнуть. Вернее могу предположить, но не хочу в это верить :) автор>> Нет, просто существует по 2 варианта - один секьюрный, другой обычный. >> По невнимательности я скопировал первый пример из обычного варианта, а >> второй - из секьюрного. Надеюсь GET и POST тестились в одинаковых условиях, а не так, что один с https, а другой с http. Sorry, что сомневаюсь в этом :) ---- Проблема явно не java, поэтому я тут бесполезен :( ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2004, 09:30 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
NotGonnaGetUsдумаю, ради теста, можно всё-таки укоротить строчку(убрать оттуда / или заменить его на %xx), что бы убедиться что грабли не в её длинне. (GET позволяет передавать до нескольких килобайт, если я не ошибаюсь.) Убрать не оплучится, потому как связка работать не будет. Если убрать один из параметров - то сервер ваще не поймёт что от него хотят Расскажи, как ты ухитряешься GET послать со странички открытой в браузере без того, что бы ответ с сервера не приходил :) Я не понимаю такого. Толи я сам ничего не понимаю, толи ещё что... Я уже приводил пример кода: url="http://www.cbr.ru/scripts/XML_daily.asp?C_month=07&C_year=2004&date_req=14%2F07%2F2004&d1=15" Set objHTTP = CreateObject("MSXML2.XMLHTTP") Call objHTTP.Open("GET", url, False) objHTTP.Send Данный код позволяет забирать страничку с сервера, сервер её создаёт по параметрам в урле. И не понимаю как такая потребность может возникнуть. Вернее могу предположить, но не хочу в это верить :) Я не совсем понял... В принципе я могу объяснить, только боюсь это достаточно специализированная вещь и врядли интересна. Надеюсь GET и POST тестились в одинаковых условиях, а не так, что один с https, а другой с http. Sorry, что сомневаюсь в этом :) Ну само собой... Не надо извиняться :) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2004, 10:52 |
|
Как на сервер отправить данные с формы, если в имени параметров есть слеш?
|
|||
---|---|---|---|
#18+
Лол. Если у респонса стоит content-type = text/html, то читать его через ("Msxml2.XMLHTTP.4.0").responseXml - не получится :) Нужно брать responseText. При обработке responseXXXX нужно ещё учитывать кодировку в которой пришёл респонс (charset=???), иначе, мне кажется, опять ерунда будет... Нужно сначала разобраться, что же присылает сервер в ответ на запрос и оттуда плясать (заголовки респонса можно посмотреть при помощи метода getAllResponseHeaders() у объекта "Msxml2.XMLHTTP.4.0"). з.ы. я что-то совсем запутался, что где не открывается в зависимости от использования метода GET или POST :)) ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2004, 18:47 |
|
|
start [/forum/topic.php?fid=59&fpage=842&tid=2153900]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
30ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 145ms |
0 / 0 |