'use strict' var qs = require('qs') var querystring = require('querystring') function Querystring (request) { this.request = request this.lib = null this.useQuerystring = null this.parseOptions = null this.stringifyOptions = null } Querystring.prototype.init = function (options) { if (this.lib) { return } this.useQuerystring = options.useQuerystring this.lib = (this.useQuerystring ? querystring : qs) this.parseOptions = options.qsParseOptions || {} this.stringifyOptions = options.qsStringifyOptions || {} } Querystring.prototype.stringify = function (obj) { return (this.useQuerystring) ? this.rfc3986(this.lib.stringify(obj, this.stringifyOptions.sep || null, this.stringifyOptions.eq || null, this.stringifyOptions)) : this.lib.stringify(obj, this.stringifyOptions) } Querystring.prototype.parse = function (str) { return (this.useQuerystring) ? this.lib.parse(str, this.parseOptions.sep || null, this.parseOptions.eq || null, this.parseOptions) : this.lib.parse(str, this.parseOptions) } Querystring.prototype.rfc3986 = function (str) { return str.replace(/[!'()*]/g, function (c) { return '%' + c.charCodeAt(0).toString(16).toUpperCase() }) } Querystring.prototype.unescape = querystring.unescape exports.Querystring = Querystring
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
auth.js | File | 4.66 KB | 0644 |
|
cookies.js | File | 974 B | 0644 |
|
getProxyFromURI.js | File | 2.19 KB | 0644 |
|
har.js | File | 4.69 KB | 0644 |
|
hawk.js | File | 2.69 KB | 0644 |
|
helpers.js | File | 1.38 KB | 0644 |
|
multipart.js | File | 2.61 KB | 0644 |
|
oauth.js | File | 4.04 KB | 0644 |
|
querystring.js | File | 1.3 KB | 0644 |
|
redirect.js | File | 4.53 KB | 0644 |
|
tunnel.js | File | 4.31 KB | 0644 |
|