Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: для новичков > Формирование строки запроса


Автор: neweraser 27.6.2012, 21:41
Доброго времени суток, уважаемые форумчане. У меня вопрос наверное просто по теории, может и по основному протоколу
HTTP, где все четко и ясно расписано, но до меня не доходит. Дело наверное таки в скриптах.
Есть сайт. На нем кнопка. При нажатии на нее формируется строка запроса, на которую в последствии передаются параметры,
так вот вопрос: как она формируется, посредством чего, как о ней узнает браузер, или он сам формирует (по формулам и т.п. 
скриптам в коде страницы). 
Например, 
Код

http://test.ru/5237893539?st.cmd=userMain&cmd=MiddleColumnTopCard_StatusPost&tkn=1858&gwt.requested=ee3fd7b1&p_sId=-4564356883279598384
. Вот сюда отсылаются параметры вида:
Код

gwt.requested=ee3fd7b1&st.status.postpostForm=niylphhwxdrwhmzqgy0nqwxeposuhitozygmdx&st.status.postfldtab=0&st.status.postcontent_textarea=1&urlPattern=(%3F%3A(%3F%3Ahttps%3F%7Cftp)%3A%5C%2F%5C%2F%7C(%3F%3Amailto%3A)%3F%5B-a-z0-9!%23%24%25%26'*%2B%2F%3D%3F%5E_%60%7B%7C%7D~%5D%5B-.a-z0-9!%23%24%25%26'*%2B%2F%3D%3F%5E_%60%7B%7C%7D~%5D*%40)%3F(%3F%3A(%3F%3A(%3F%3A(%3F%3A%5B%5Cw%D0%B0-%D1%8F%D0%90-%D0%AF-%5D%2B)%5C.)%7B1%2C5%7D)(%3F%3Acom%7Cnet%7Corg%7Cbiz%7Cinfo%7Cname%7Cpro%7Casia%7Caero%7Ccat%7Ccoop%7Ceco%7Cjobs%7Cmobi%7Cmuseum%7Cpost%7Ctel%7Ctravel%7Cxxx%7Cedu%7Cgov%7Cint%7Cmil%7C%D1%80%D1%84%7C%D0%B8%D1%81%D0%BF%D1%8B%D1%82%D0%B0%D0%BD%D0%B8%D0%B5%7Cxn--%5B%5Cw-%5D*%7C%5Ba-z%5D%7B2%7D)%7C(%3F%3A(%3F%3A25%5B0-5%5D%7C2%5B0-4%5D%5B0-9%5D%7C%5B01%5D%3F%5B0-9%5D%5B0-9%5D%3F)%5C.)%7B3%7D(%3F%3A25%5B0-5%5D%7C2%5B0-4%5D%5B0-9%5D%7C%5B01%5D%3F%5B0-9%5D%5B0-9%5D%3F))(%3F%3A%3A%5Cd%7B1%2C5%7D)%3F(%3F%3A%5C%2F%5B%3B%3A%3D%5C%25%23%5C%26%5C%3F%5Cw%5C%2F%D0%B0-%D1%8F%D0%90-%D0%AF%5C.%2B%5C-!_'*()%5D*)%3F&st.status.postpreviewInput=&st.status.postpreviewInput=&st.status.postpreviewInput=&st.status.postpreviewInput=&st.status.postpreviewInput=&st.status.postpreviewInput=&st.status.postpreviewInput=&st.status.postpreviewInput=&st.status.postpreviewInput=&st.status.postphotoAlbumPolicy=2

Большинство параметров строки я знаю, знаю откуда их брать, кроме последнего p_sId. Может он как раз и генерируется
какой-нибудь формулой, но это не суть, мне важно понять, как именно эта строка собирается, почему именно в таком порядке
и откуда что берется...
Спасибо.
ps. Не пойму, что с форматированием кода, почему в одной строке, или у меня у одного так? 

Автор: neweraser 29.6.2012, 21:07
Вопрос же не сложный для знающих людей, ткните хоть пальцем, где почитать что ли... 
Спасибо.

Автор: iff 29.6.2012, 21:51
Цитата(neweraser @  27.6.2012,  21:41 Найти цитируемый пост)
формируется строка запроса, на которую в последствии передаются параметры

 smile
 
Цитата(neweraser @  27.6.2012,  21:41 Найти цитируемый пост)
так вот вопрос: как она формируется, посредством чего, как о ней узнает браузер, или он сам формирует (по формулам и т.п. 

Можете прочитать о формате GET и POST запросов.
Запрос может формироваться браузером при отправке формы.
Так же GET-запрос легко сформировать при помощи js (устанавливая нужное значение в document.location.href).

Цитата(neweraser @  27.6.2012,  21:41 Найти цитируемый пост)
 мне важно понять, как именно эта строка собирается, почему именно в таком порядке
и откуда что берется...

это get-запрос. он собирается так:
имяСтраницы?параметр1=значение&параметр2=значение&параметр3=значение
порядок любой. В случае, если в значении есть недопустимые символы (допустимы только латинские буквы, цифры и знаки: точка, тире, подчоркивание, плюс, косая черта и возможно др.) то они заменяются на последовательность из знака процентов и кода символа в шестнадцатиричной системе.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)