Node.js | querystring.stringify () Метод
Метод querystring.stringify () используется для создания строки запроса URL из заданного объекта, который содержит пары ключ-значение. Метод выполняет итерацию по собственным свойствам объекта для создания строки запроса.
Он может сериализовать отдельную строку или массив строк, чисел и логических значений. Любые другие типы значений приводятся к пустым строкам.
Во время сериализации формат кодировки UTF-8 используется для кодирования любого символа, требующего процентного кодирования. Для кодирования с использованием альтернативной кодировки символов необходимо указать параметр encodeURIComponent
Синтаксис:
querystring.stringify (obj [, sep [, eq [, options]]])
Параметры: эта функция принимает четыре параметра, как указано выше и описано ниже:
- obj: это объект, который необходимо сериализовать в строку запроса URL.
- sep: это строка, которая определяет подстроку, используемую для разделения пар ключ и значение в строке запроса. Значение по умолчанию - «&».
- eq: это строка, определяющая подстроку, используемую для разделения ключей и значений в строке запроса. Значение по умолчанию - «=».
- options: это объект, который можно использовать для изменения поведения метода. Имеет следующие параметры:
- encodeURIComponent: это функция, которая будет использоваться для преобразования небезопасных для URL-адресов символов в процентное кодирование в строке запроса. Значение по умолчанию -
querystring.escape().
- encodeURIComponent: это функция, которая будет использоваться для преобразования небезопасных для URL-адресов символов в процентное кодирование в строке запроса. Значение по умолчанию -
Возвращаемое значение: возвращает строку, содержащую URL-запрос, созданный для данного объекта.
Ниже программы иллюстрируют метод querystring.stringify () в Node.js:
Пример 1:
// Import the querystring moduleconst querystring = require( "querystring" ); // Specify the URL object// to be serializedlet urlObject = { user: "sam" , access: true , role: [ "admin" , "editor" , "manager" ],}; // Use the stringify() method on the objectlet parsedQuery = querystring.stringify(urlObject); console.log( "Parsed Query:" , parsedQuery); |
Выход:
Разобранный запрос: user = sam & access = true & role = admin & role = editor & role = manager
Пример 2:
// Import the querystring moduleconst querystring = require( "querystring" ); // Specify the URL object// to be serializedlet urlObject = { user: "max" , access: false , role: [ "editor" , "manager" ],}; // Use the stringify() method on the object// with sep as `, ` and eq as `:`let parsedQuery = querystring.stringify(urlObject, ", " , ":" ); console.log( "Parsed Query 1:" , parsedQuery); // Use the stringify() method on the object// with sep as `&&&` and eq as `==`parsedQuery = querystring.stringify(urlObject, "&&&" , "==" ); console.log( "
Parsed Query 2:" , parsedQuery); |
Выход:
Разобранный запрос 1: пользователь: макс, доступ: ложь, роль: редактор, роль: менеджер Разобранный запрос 2: user == max &&& access == false &&& role == editor &&& role == manager
Ссылка: https://nodejs.org/api/querystring.html#querystring_querystring_stringify_obj_sep_eq_options