Передать параметры GET в строке запроса

Мне нужно сделать 2 вещи:

  • Передать пару параметров в строку запроса
  • Перенаправление на URL, указанный в одном из параметров

Один из параметров redirect=URL_here. Проблема в том, что я должен перенаправить на эту страницу: /about/me?look=1&sort=asc Тогда мой URL выглядит так:

/mypage/?letter=S&redirect=/about/me?look=1&sort=asc

Я знаю, что это неправильно (содержит два "?"). Вопрос в том, как правильно сделать эту строку запроса?


person tunarob    schedule 14.02.2013    source источник


Ответы (3)


URL кодирует значения строки запроса.

person Philip Tenn    schedule 14.02.2013

поменяй знак = на свой лайк || в своей ссылке. В вашем случае измените ссылку следующим образом
/about/me?look||1&sort||asc

Затем позже вы замените || на =

person vusan    schedule 14.02.2013

Использовать кодировку URL

Как это

<script>
var c= 'd e'
var query= '?a=b&c='+encodeURIComponent(c);
var uri= 'http://www.example.com/script?query='+encodeURIComponent(query);
window.location= uri;
</script>

и использовать

 decodeURIComponent()

декодировать

person Harshit Tailor    schedule 14.02.2013
comment
Нет возможности поставить JS куда угодно. Единственный способ, которым я могу это сделать, это подготовить правильную строку запроса - она ​​используется в закрытой системе, и код не может быть изменен. - person tunarob; 14.02.2013
comment
тогда замени свой? и & с другими специальными символами, такими как mypage/?letter=S&redirect=/about/me*look=1^sort=asc - person Harshit Tailor; 14.02.2013
comment
Какая от этого польза? Если я изменю look=1& на look=1^, как тогда это будет работать? - person tunarob; 14.02.2013