Странное поведение

Я храню URL отзыва Google в моей базе данных как:

https://www.google.com/search?CFID=ac59cfdf-bbad-4017-9759-e88054f3f242&CFTOKEN=0&q=njcomputerrepair%2Bbrick%2Bnj&oq=njcomp&aqs=chrome.1.69i60j69i59j69i60j69i57j0l2.2762j0j9&sourceid=chrome&ie=UTF-8#lrd=0x89c18348735c2907:0x59aa614832a36b22,3,

А затем в своем приложении я установил этот URL-адрес в переменную и перенаправил пользователя на этот URL-адрес с помощью cflocation.

<cfquery name="geturl" datasource="#datasource#">
select (residential_ReviewURL) as redirectURL
from subscribers
</cfquery>

<!--- Redirect to main html redirect page --->
<cfoutput>
<cflocation url="#getURL.redirectURL#">
</cfoutput>

Однако URL-адрес изменяется в какой-то момент, потому что я думаю, что Coldfusion не нравится символы в URL-адресе, и он заменяет их на% или удаляет их. Поэтому, когда пользователь переходит на страницу Google, страница не обрабатывается, как следует.

Вот как выглядит URL после перенаправления:

https://www.google.com/search?CFID=ac59cfdf-bbad-4017-9759-e88054f3f242&CFTOKEN=0&CFID=ac59cfdf-bbad-4017-9759-e88054f3f242&CFTOKEN=0&q=njcomputerrepair%2Bbrick%2Bnj&oq=njcomp&aqs=chrome.1.69i60j69i59j69i60j69i57j0l2.2762j0j9&sourceid=chrome&ie=UTF-8#lrd%3D0x89c18348735c2907%3A0x59aa614832a36b22%2C3%2C

Как я могу помешать ColdFusion изменить URL-адрес и сохранить идентификатор точно так же, как он хранится в базе данных?

ОБНОВИТЬ

Итак, я обнаружил, что URLdecode сохранит строку. Вот что у меня есть.

#urlDecode(getURL.redirectURL)#

Выход выглядит следующим образом

https://www.google.com/search?CFID=ac59cfdf-bbad-4017-9759-e88054f3f242&CFTOKEN=0&q=njcomputerrepair+brick+nj&oq=njcomp&aqs=chrome.1.69i60j69i59j69i60j69i57j0l2.2762j0j9&sourceid=chrome&ie=UTF-8,

Почему это добавляет CFID и CFTOKEN к URL, хотя? У меня это отключено в моем Application.CFM:

<cfapplication name="yaya" 
    clientmanagement="no" 
    sessionmanagement="no" 
    setclientcookies="no" 
    setdomaincookies="no"
    sessiontimeout="#CreateTimeSpan(0,2,0,0)#" 
    applicationtimeout="#CreateTimeSpan(1,0,0,0)#"
      >

0 ответов

Чтобы помочь другим, приходящим сюда:

cflocation иметь параметр addToken который необходимо установить на no если мы не хотим добавлять CFID а также CFTOKEN на сгенерированный URL.

Ссылка на Adobe CFML: https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-tags/tags-j-l/cflocation.html

Другие вопросы по тегам