我有一个如下的网址。
http://editor-sandbox.multiscreensite.com/home/dashboard?stat:339716385fb44bffae0d915cece952b8&dm_sso=2!eyJ2ZXJz
这里的 url 中有冒号 (:)
现在我将重定向 URL,如下所示。
pageRef= new PageReference(aboveURL);
pageRef.setRedirect(true);
return pageRef;
但是在浏览器中,它会删除所有 url 参数,浏览器中的最终 URL 是:
http://editor-sandbox.multiscreensite.com/home/dashboard
如何保留 URL 中的所有值(包括冒号)?
最佳答案
冒号是 URL 中的保留字符(请参阅 RFC 3986)。只要值有可能包含保留字符,您就应该对其进行 urlencode(这会将 :
替换为 %3A
,将 !
替换为 %21
,以及其他(如果有):
url = 'http://editor-sandbox.multiscreensite.com/home/dashboard?'
+ EncodingUtil.urlEncode('stat:339716385fb44bffae0d915cece952b8,'UTF-8')
+ '&dm_sso='
+ EncodingUtil.urlEncode(2!eyJ2ZXJz','UTF-8');
关于java - 重定向时 URL 中的冒号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36990390/