整个类的代码如下:
/**
* 获取get请求中的参数
*
* @author MaLong
* @param loc
* (可选String or Object) String 类型须为URL, Object则为Location的对象
* 默认为window.location
*/
var Request = function(loc) {
var paramsStr;
var hashSearchString;
if (!loc || typeof loc == "object") {
loc = loc || window.location;
if (/#.+\?/.test(paramsStr)) {
paramsStr = loc.hash;
} else
paramsStr = loc.search;
} else if (typeof loc == "string") {
if (/.*\?.+[#.+]?/.test(loc))
paramsStr = loc.replace(/.*\?/, "");
else
paramsStr = loc.replace(/.*#/, "#");
}
if (!/#.+\?/.test(paramsStr)) {
this.pageSelector = paramsStr.replace(/^\?.*#$/, "#");
hashSearchString = paramsStr.replace(/\?|(#.+)/, "");
} else {
this.pageSelector = paramsStr.replace(/\?.*$/, "");
hashSearchString = paramsStr.replace(/#.+\?/, "");
}
var params = hashSearchString.split("&");
var reg = /^(\w+)=(.*)$/;
this.paramsMap = {};
for ( var i = 0, length = params.length; i < length; i++) {
var _p = reg.exec(params[i]);
if (_p)
this.paramsMap[_p[1]] = _p[2];
}
}
Request.prototype = {
/**
* 根据参数名获取参数值
*
* @param name
* @return 参数值
*/
getParam : function(name) {
return this.paramsMap[name];
},
/**
* 设置参数名和参数值
*
* @param name
* 参数名
* @param value
* 参数值
*/
setParam : function(name, value) {
this.paramsMap[name] = value;
},
/**
* 获取所有参数
*
* @returns 封装所有参数名和参数值的json
*/
getParams : function() {
return this.paramsMap;
},
/**
*
*/
paramSize : function() {
},
/**
*
*/
getHashParam : function() {
},
/**
* pageSelector 为通过hash值改变页面而预留,例:xxx.com#pageSelector
*/
getPageSelector : function() {
return this.pageSelector;
}
}
调用:
if(!/.*\?.+/.test(dataUrl))
dataUrl=window.location;
//dataUrl 可选
var request = new Request(dataUrl);
var userName=request.getParam("userName");
分享到:
相关推荐
在ASP.NET后台代码中,对于这样的URL请求地址:http://www.abc.com?id=001,我们可以通过Request.QueryString["id"]的方法很容易的获取到URL中请求的参数的值,但是要在前台js代码中获取请求的参数的值,应该怎么做呢...
封装了跟后台接口沟通的ajax,还有一个获取url传递get参数的两个公共函数,自己用来跟C#后台接口沟通的前端封装类,有类似需求的可以看看
在ASP.NET后台代码中,对于这样的URL请求地址:http://www.abc.com?id=001,我们可以通过Request.QueryString["id"]的方法很容易的获取到URL中请求的参数的值,但是要在前台js代码中获取请求的参数的值,应该怎么做呢...
6.7.html 各种使用JavaScript获取复选框值的方法。 6.8.html JavaScript控制复选框。 6.9.html 复选框的JavaScript特效。 6.10.html JavaScript取单选框的值。 6.11.html JavaScript控制单选框...
Ajax 是异步的JavaScript和XML的简称,是一种更新页面某部分的机制。它赋予了你从服务器获取数据后,更新页面某部分的权力,从而避免了刷新整个页面。...然后调用其 open 方法,其中第一个参数是 HTTP 请求方
环境:vs2019、.net 4.6。 WinForm窗体程序中使用CefSharp获取加载后的资源、截取request参数、拦截response数据、注入jquery文件和js代码。有问题可联系q369628105
因为一开始是 GET 请求,所以当传递的数据过大的时候,会报错 nginx 414 request-uri too long 客户端请求头缓冲区大小,如果请求头总长度大于小于128k,则使用此缓冲区 client_header_buffer_size 128k; 请求头...
支持的功能url参数自动序列化发布数据提交方法得到简化响应返回处理简化api超时支持api请求缓存支持支持处理gbk 请求和响应拦截器支持,例如axios 统一错误处理中间件支持取消请求支持,例如axios 从node.js发出http...
curl-cmd 从 http 请求对象生成 curl 命令行参数列表安装 npm install curl-cmd例子取自 HTTP 获取请求的示例 var http = require ( 'http' ) ;var curl = require ( 'curl-cmd' ) ;var options = { hostname : '...
http请求的大多数方面的声明式匹配,包括url,标头,正文和查询参数 最常用功能的简写形式,例如匹配http方法或仅匹配一个访存 支持延迟响应,或使用您自己的异步函数定义自定义竞争条件 可以用作监视真实网络请求的...
获取get请求参数、去字符串空格。 1、获取get请求中的参数 Js代码 function getPara(para){ if(location.href.indexOf("?") == -1){ // 没有参数,则Do nothing. return null; } else{ // 取得GET请求?号...
请求信息 获取有关 http 请求的信息。 请考虑关注此项目的作者 ,并考虑为该项目加星以展示您的 :red_heart: 和支持。安装使用安装(需要 >=0.10.0): $ npm install --save request-info用法 const info = require...
16_6.htm 通过XML HTTP做一个特殊HEAD的请求。 16_7.htm 显示XML数据表格。 16_8.htm 服务器端的动态建议。 第17章(\17) 示例描述:Prototype基础应用。 17_1.htm 使用$()得到html元素。 17_2.htm 使用...
16_6.htm 通过XML HTTP做一个特殊HEAD的请求。 16_7.htm 显示XML数据表格。 16_8.htm 服务器端的动态建议。 第17章(\17) 示例描述:Prototype基础应用。 17_1.htm 使用$()得到html元素。 17_2.htm 使用...
Referrer的重要性HTTP请求中有一个referer的报文头,用来指明当前流量的来源参考页。例如在www.sina.com.cn/sports/上点击一个链接到达cctv.com首页,那么就referrer就是www.sina.com.cn/sports/了。在Javascript中...
方法从身份证号码获取生日的例子 10.3.2.2 一个使用test()方法遍历字符串的例子 10.4 关于正则表达式包装对象 10.4.1 RegExp对象——利用正则表达式实现全文检索 10.4.2 RegExp的实例属性 10.5 ...
允许通过查询参数或请求标头设置值。 对于Koa和Express。 $ npm install request-id 用法 快速入门(考阿或特快) # koa var requestId = require('request-id'); var app = require('koa')(); app.use(requestId...
url: 发送请求的地址data : (可选) 待发送key/value参数callback: (可选) 载入成功时的回调函数主要用于客户端获取服务器JSON数据。简单示例: 服务器脚本,返回JSON数据: 代码如下:// $.getJSON.php$arr=array(...
前端将页码和条数两个参数通过 HTTP 请求传输给后端; 2. 后端获取到这两个参数后进行参数验证,查询后将当前页的所有数据实体和数据总量封装; 3. 后端将封装数据返回给前端; 4. 前端获取到数据和数据量后分别...
例如,您可以像这样在Debian系统上安装TOR: apt-get install tor tor-geoipdb使用节点安装通过npm package-manager安装该软件包: npm install torrequest用法您可以像请求模块一样使用此模块。 请参阅获取更多...