隐藏Url中的参数

动态网页中怎么隐藏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>

  

原文地址:https://www.cnblogs.com/zhumengke/p/8889721.html

时间: 2024-11-10 18:34:47

隐藏Url中的参数的相关文章

JavaScript隐藏Url中的参数

<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');

CI框架 .htaccess 隐藏url中index.php的解决

CodeIgniter(以下简称"CI")是一款国外优秀的PHP轻量级MVC框架,它支持PHP4和PHP5,是开发中小型可拓展性需求高的Web应用程序的利器.目前你所见到的这个博客程序,正是采用CI进行的编写. 秉承MVC架构的思想,CI中的所有控制器都需要经过单点入口文件index.php(默认)来加载调用.也就是说,在默认情况下,所有CI开发项目的URL都形如以下这种形式: http://localhost/index.php/blog/logs/this_is_a_test_en

javascript获取当前url中的参数

javascript获取当前页面url中的参数可以使用location的search方法,获取到的是url中?后面的部分,例如http:localhost:8080/Manager/index.jsp?id=1 使用location的search方法可以获取到字符串?id=1;想要获取?后面的键值对可以使用substring方法对其进行截取,截取后获得id=1;需要获得id的值,可以使用split()方法对其进行拆分,拆分表达式为"=".下面看具体例子: window.onload =

如何获取url中的参数并传递给iframe中的报表

在使用报表软件时,用户系统左边一般有目录树,点击报表节点就会在右侧网页的iframe中显示出报表,同时点击的时候也会传递一些参数给网页,比如时间和用户信息等.如何使网页中的报表能够获取到传递过来的参数呢?以下用报表软件FineReport简单介绍一些. 具体实现过程 将报表生成页面时,给网页添加onload事件,首先获取url中的参数,然后嫁接到iframe的src上,或者通过获得的参数拼接处完整的报表url赋给iframe的src. <html> <head> <title

.NET 获取Get方式URL中的参数键值

在Web开发中,我们常常会涉及到需要获取Get方式URL中的参数键值的情况,这里简单介绍三种方法: 第一种:常用的做法有使用JavaScript获取location.href后用正则表达式匹配获取此URL的所有键值对: 第二种:这里比如有个Key参数键,需要获取它对应的值:这时可以使用.NET里的Request.Form["Key"](针对Post)或Request.QueryString["Key"](针对Get),也可以用Request["Key&qu

C#获取URL中的参数

//获取URL中id参数  var ids = YK.Common.Util.WebKit.QueryParamValue("ids", "");         /// <summary>         /// 获取url参数的字符串类型值         /// </summary>         /// <param name="key">参数名</param>         /// &

vue中如何不通过路由直接获取url中的参数

前言:为什么要不通过路由直接获取url中的参数? vue中使用路由的方式设置url参数,但是这种方式必须要在路径中附带参数,而且这个参数是需要在vue的路由中提前设置好的. 相对来说,在某些情况下直接在url后面拼接?mid=100的方式传递参数更灵活,你不需要设置路由,只需要在url后拼接参数即可,但是这种方式就需要通过javascript获取并提取url中的参数,通过传统的方式直接在页面中获取是行不通的了,因为vue中是无法通过location.search()来获取url问号之后的内容的.

javascript对URL中的参数进行简单加密处理

javascript的api本来就支持Base64,因此我们可以很方便的来进行编码和解码. var encodeData = window.btoa("name=xiaoming&age=10")//编码 var decodeData = window.atob(encodeData)//解码. 下面来个具体的例子来说明如何对url中参数进行转码,并取得解码后的参数 假如要跳转的url = "stu_info.html?name=xiaoming&age=10

js获取url中的参数,并保证获取到的参数不乱码

  //网上比较经典的js获取url中的参数的方法  function getQueryString(name) {      var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");      var r = window.location.search.substr(1).match(reg);      if ( r != null ){