获取URL中附带的请求参数的方式

在进行请求的时候,通常的方式是:request.getParametere("param");来获得我们想要的一些参数,

但是在现实的生活中我们需要自定义一些URL格式的请求参数,对这些格式的请求参数可能通过request.getParameter("param")

就不是十分的合适。

下面我们以http://www.yongit.com/device/md5/44CF9590006BF252F707?firstParam=gHdg5pU48rHTDknJ&secondParam=1141889120&thirdParam=vjbyPxybdZaNmGa%2ByT272YEAiv4%3D

为例进行自我解析URL中的带有的一些参数。

具体的方法格式如下:

Map url_queryparams  = new HashMap();

String querystring = request.getQueryString();
while(querystring!=null && querystring.length()>0){
  String querydata = "";
  int queryindex = querystring.indexOf(‘&‘);
  if(queryindex>0){
    querydata = querystring.substring(0, queryindex);
    querystring = querystring.substring(queryindex+1);
  }else{
    querydata = querystring;
    querystring = "";
  }
  if(querydata==null || querydata.length()==0)
    continue;
  int paramindex = querydata.indexOf(‘=‘);
  if(paramindex<=0)
    continue;

  String paramkey = querydata.substring(0, paramindex);
  String paramvalue = querydata.substring(paramindex+1);

  if(paramvalue==null || paramvalue.length()==0){
    //该参数值为空, 忽略它
    continue;
  }
  if(PARAM_AccessKey.equals(paramkey) || PARAM_Signature.equals(paramkey) || PARAM_Expires.equals(paramkey)){
    //请求的参数, 添加到Map中
    url_queryparams.put(paramkey, paramvalue);
  }
}

以上是对该需求进行处理的主题方法,对具体的业务,可以进行适当的修正,以满足自己的需求。

时间: 2024-11-13 01:43:07

获取URL中附带的请求参数的方式的相关文章

c#获取url中的查询字符串参数

/// <summary> /// 获取url中的查询字符串参数 /// </summary> public static NameValueCollection ExtractQueryParams(string url) { int startIndex = url.IndexOf("?"); NameValueCollection values = new NameValueCollection(); if (startIndex <= 0) ret

nodejs 获取url中json格式的参数

在使用nodejs时经常使用req.query.参数名 来获取参数的值 例如 url : http://localhost:7778/project?id=1 <span style="font-size:18px;">var id = req.query.id console.log(id);//打印出url的id参数值1 </span> 但是在url中的参数是JSON格式时就出现了问题 url:http://localhost:7778/project?ma

如何用js获取浏览器URL中查询字符串的参数

首先要知道Location这个对象以及这个对象中的一些属性: href:设置或返回完整的url.如本博客首页返回http://www.cnblogs.com/wymninja/ host:设置或返回主机名和当前的URL的端口号.本博客首页返回www.cnblogs.com hostname:设置或返回当前URL的主机名.本博客首页返回www.cnblogs.com hash:设置或返回从井号(#)开始的URL(锚).本博客首页返回 空 pathname:设置或返回当前URL的路径部分.本博客首页

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

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

记录一次bug解决过程:velocity中获取url中的参数

一.总结 在Webx的Velocity中获取url中参数:$rundata.getRequest().getParameter('userId') 在Webx项目中,防止CSRF攻击(Cross-site request forgery,跨站请求伪造),在form表单提交中要加入$!csrfToken.ajaxUniqueToken 二.Bug描述:Velocity从URL中获取parameter参数 在项目IDCM中,使用webx容器进行项目的开发.前端的模板引擎采用了velocity,在项目

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

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

C#获取URL中的参数

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

Javascript RegExp对象---获取url中某一个参数的值

RegExp 对象 RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具. 直接量语法 /pattern/attributes实例:window.location.href:http://localhost:8100/aspx/main/ServiceCenter_list.aspx?category_id=93&page=2要匹配到的category_id=93:/category_id=\d+/g 创建 RegExp 对象的语法: new RegExp(pattern, at

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 ){