{"repo":"ljharb/qs","free":true,"listed":false,"github":"https://github.com/ljharb/qs","clone":"git clone https://github.com/ljharb/qs.git","description":"A querystring parser and serializer with nesting support","language":"JavaScript","stars":8942,"topics":["javascript","encoding","querystrings","nodejs","node","browsers","url-parsing","stringify","parse"],"license":"BSD-3-Clause","category":"dev-tools","readme_excerpt":"qs [![Version Badge][npm-version-svg]][package-url] [![github actions][actions-image]][actions-url] [![coverage][codecov-image]][codecov-url] [![License][license-image]][license-url] [![Downloads][downloads-image]][downloads-url] [![npm badge][npm-badge-png]][package-url] A querystring parsing and stringifying library with some added security. Lead Maintainer: Jordan Harband The qs module was originally created and maintained by TJ Holowaychuk. Usage Parsing Objects qs allows you to create nested objects within your query strings, by surrounding the name of sub-keys with square brackets [] . For example, the string 'foo[bar]=baz' converts to: When using the plainObjects option the parsed value is returned as a null object, created via { proto : null } and as such you should be aware that prototype methods will not exist on it and a user may set those names to whatever value they like: By default parameters that would overwrite properties on the object prototype are ignored, if you wish to keep the data from those fields either use plainObjects as mentioned above, or set allowPrototypes to true which will allow user input to overwrite those properties. WARNING It is generally a bad idea to enable this option as it can cause problems when attempting to use the properties that have been overwritten. Always be careful with this option. URI encoded strings work too: You can also nest your objects, like 'foo[bar][baz]=foobarbaz' : By default, when nesting objects qs will only parse","default_branch":null,"files":null,"tree":[],"storefront":"/r/ljharb","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/ljharb/qs/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}