Переменные URL не проходят через механизм перезаписи URL - PullRequest
0 голосов
/ 07 апреля 2019

Я пытаюсь передать несколько переменных через механизм перезаписи URL-адресов в IIS, но получаю только одну переменную. Переменные: «имя пользователя» и «информация». На данный момент я получаю только первую переменную "username", которая передается на страницу.

Я перепробовал несколько форматов при перезаписи URL, а также как можно лучше проверял свой синтаксис, но не могу найти ничего неправильного. Ниже приведен код.

URL, удобный для браузера:

http://localhost/member/csaad78/social

URL-адрес на стороне сервера: member.asp? Имя пользователя = csaad78 & информация = социальная

Правило в механизме перезаписи URL:

  <rule name="member social iframe forwarded">
    <match url="^member/([_0-9a-z-]+)/([_0-9a-z-]+)/?$" />
    <action type="Rewrite" url="member.asp?username={R:1}&amp;info={R:2}" appendQueryString="true" />
    <conditions></conditions>
    <serverVariables></serverVariables>
  </rule>

Код, перехватывающий строку запроса на странице:

member_name = Trim (request.querystring ("username")) info = Trim (request.querystring ("info"))

Только переменная username передается. «информация» не передается. Я бы хотел, чтобы оба они прошли!

1 Ответ

0 голосов
/ 08 апреля 2019

Вы можете использовать приведенное ниже правило и код asp для получения значения параметра строки запроса:

<rule name="member social iframe forwarded">
            <match url="^member/([_0-9a-z-]+)/([_0-9a-z-]+)/?$" />
            <action type="Rewrite" url="member.asp?username={R:1}&amp;info={R:2}" appendQueryString="true" />
          </rule>

код asp:

member_name= <%=Request.QueryString("username")%> info= <%= Request.QueryString("info")%>. 

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...