1. 程式人生 > >隱藏Url中的參數

隱藏Url中的參數

url地址 display AS 搜索引擎 isp tee create bsp brush

動態網頁中怎麽隱藏url參數傳遞

轉自:https://www.cnblogs.com/limeiky/p/6202358.html

   我們在做動態網站的時候往往會在各個頁面之間傳遞參數,而這些參數的名稱和值都會在url地址欄中被暴露出來,這樣一方面不安全,另一方面也不便於搜索引擎的收錄,有的時候還有可能由於參數中含有中文而導致某些瀏覽器會出錯(我發現在Firefox瀏覽器中用get方式傳遞中文參數時會出錯)。所以我們有必要隱藏url參數傳遞,具體方法請看下面具體介紹。

  隱藏url參數傳遞,思路是用表單來傳遞參數,把參數的值放在表單中,並把表單設為隱藏,然後用超鏈接來觸發表單事件,從而把參數以post方式傳遞給另一個頁面。

  (1) 例: html文件為傳遞參數的頁面,具體代碼如下:

<form name="form1" method="post" action="a.action"> 
  <input type="hidden" name="data1" value="http://www.htmer.com" /> 
  <input type="hidden" name="data2" value="11" /> 
</form> 
<a href="javascript:void(0)" onclick="form1.submit()">HTMer隱藏url參數傳遞</a>

  

說明:上面的代碼中建立了一個名為htmer的表單,表單提交的頁面為htmer.asp,這個表單中有兩個隱藏域,分別名為data1和data2,我們的目的是將這兩個隱藏域的值傳遞到htmer.asp頁面中,上面代碼中最關鍵的代碼是最後一行,原理是用超鏈接來觸發表單的submit提交事件。

  (2) 例:最終的代碼如下,希望對別人有點幫助。

<form name="form1" method="post" action="a.action"> 
  <input type="hidden" name="submit" value="1"> 
  <input type="submit" name="test" value = "go" style="display:none">  //隱藏一個按鈕
  <a href="javascript:void(0)" onclick="javascript:document.form1.test.click();">測試主頁 </a>
</form> 


事實上,點擊超鏈接之後,觸發了點擊按鈕的動作,按鈕提交了表單!

轉自:https://www.cnblogs.com/limeiky/p/6202358.html

   我們在做動態網站的時候往往會在各個頁面之間傳遞參數,而這些參數的名稱和值都會在url地址欄中被暴露出來,這樣一方面不安全,另一方面也不便於搜索引擎的收錄,有的時候還有可能由於參數中含有中文而導致某些瀏覽器會出錯(我發現在Firefox瀏覽器中用get方式傳遞中文參數時會出錯)。所以我們有必要隱藏url參數傳遞,具體方法請看下面具體介紹。

  隱藏url參數傳遞,思路是用表單來傳遞參數,把參數的值放在表單中,並把表單設為隱藏,然後用超鏈接來觸發表單事件,從而把參數以post方式傳遞給另一個頁面。

  (1) 例: html文件為傳遞參數的頁面,具體代碼如下:

<form name="form1" method="post" action="a.action"> 
  <input type="hidden" name="data1" value="http://www.htmer.com" /> 
  <input type="hidden" name="data2" value="11" /> 
</form> 
<a href="javascript:void(0)" onclick="form1.submit()">HTMer隱藏url參數傳遞</a>

  

說明:上面的代碼中建立了一個名為htmer的表單,表單提交的頁面為htmer.asp,這個表單中有兩個隱藏域,分別名為data1和data2,我們的目的是將這兩個隱藏域的值傳遞到htmer.asp頁面中,上面代碼中最關鍵的代碼是最後一行,原理是用超鏈接來觸發表單的submit提交事件。

  (2) 例:最終的代碼如下,希望對別人有點幫助。

<form name="form1" method="post" action="a.action"> 
  <input type="hidden" name="submit" value="1"> 
  <input type="submit" name="test" value = "go" style="display:none">  //隱藏一個按鈕
  <a href="javascript:void(0)" onclick="javascript:document.form1.test.click();">測試主頁 </a>
</form> 


事實上,點擊超鏈接之後,觸發了點擊按鈕的動作,按鈕提交了表單!

JavaScript:隱藏Url中的參數

轉自:https://www.cnblogs.com/Cchblogs/p/6024012.html

<script type="text/javascript">
function submitForm(url, data)
{
  var eleForm = document.body.appendChild(document.createElement(‘form‘));
  eleForm.action = url;
  for (var property in data)
  {
    var hiddenInput = document.createElement(‘input‘);
    hiddenInput.type = ‘hidden‘;
    hiddenInput.name = property;
    hiddenInput.value = data[property];
    eleForm.appendChild(hiddenInput);
  }
  this.eleForm = eleForm;
  if (!submitForm._initialized)
  {
    submitForm.prototype.post = function ()
     {
      this.eleForm.method = ‘post‘;
      this.eleForm.submit();
    };
  submitForm._initialized = true;
  }
}
 
function Onclick()
{
  //location.href = "/Activity/ActivityInformation?a_id=" + "1"; // Url中會帶有參數
  new submitForm(‘/Activity/ActivityInformation‘, { a_id: "1" }).post(); // Url中的參數被隱藏
}
</script>

  

隱藏Url中的參數