쿼리 문자열 모듈은 URL 쿼리 문자열을 구문 분석하고 형식화하기 위한 API를 제공합니다. 이 기사에서는 Node.js 쿼리 문자열 구문 분석 쿼리 문자열의 관련 내용을 자세히 소개하고 참고 및 연구를 위해 공유하지는 않겠습니다. 자세한 소개는 아래에서 살펴보겠습니다.
1. querystring.parse(str[, sep[, eq[, options]]])
이 API는 URL 쿼리 문자열을 키와 값의 컬렉션으로 구문 분석합니다
str:URL 쿼리 문자열
sep: 문자열에서 키-값 쌍을 나누는 데 사용되는 기호를 나타냅니다. 기본값은 "&"입니다.
eq: 쿼리 문자열에서 키와 값 사이의 기호를 나타내는 데 사용되며, 기본값은 "="입니다.
예는 다음과 같습니다:
const querystring = require('querystring'); const url = require('url'); var queryUrl="http://localhost:8888/bb?name=李浩&memo=helloworld&memo=helloC"; queryUrl=url.parse(queryUrl).query; console.log(querystring.parse(queryUrl)) ; ---------------------------------------------------- // 输出 { name: '李浩', memo: [ 'helloworld', 'helloC' ] }
매개변수가 있는 예:
const querystring = require('querystring'); const url = require('url'); var queryUrl="http://localhost:8888/bb?name==李浩*memo==helloworld*memo==helloC"; queryUrl=url.parse(queryUrl).query; console.log(querystring.parse(queryUrl,'*','==')) ; ---------------------------------------------------- // 输出 { name: '李浩', memo: [ 'helloworld', 'helloC' ] }
2.querystring.stringify(obj[, sep[, eq[, options]]])
이 API는 주어진 개체에서 URL을 생성합니다. 개체의 "자체 속성"을 순회하는 쿼리 문자열입니다.
obj는 주어진 객체입니다.
sep은 키-값 쌍 사이의 구분 기호입니다. 기본값은 "&"입니다.
eq는 키와 값 사이의 연결 기호이며 기본값은 "="
예제는 다음과 같습니다.
const qs=require("querystring"); var obj={ name: '李浩', memo: [ 'helloworld', 'helloC' ] } console.log( qs.stringify(obj) ) /* 输出 name=%E6%9D%8E%E6%B5%A9&memo=helloworld&memo=helloC; API默认是对中文进行了编码,下面我们再说编码解码的API */
매개변수가 있는 예:
const qs=require("querystring"); var obj={ name: '李浩', memo: [ 'helloworld', 'helloC' ] } console.log( qs.stringify(obj,'@','==') )
출력 이름==%E6%9D%8E%E6%B5%A9@memo==helloworld@memo==helloC;
믿습니다 읽어보세요 매개변수를 사용하는 것과 사용하지 않는 것의 차이점을 아셨나요?
3. querystring.unescape(str)
이 API는 URL 쿼리 문자열의 URL을 디코딩합니다. 위의 경우 중국어가 인코딩된 다음 URL의 중국어 문자도 인코딩된 형식으로 구문 분석됩니다. 이 API는 일반적으로 querystring.parse()와 함께 사용됩니다.
인코딩된 중국어 문자가 포함된 위의 URL 쿼리 문자열을 다음과 같이 사용하겠습니다. an example
예제는 다음과 같습니다.
const qs = require("querystring"); var url = "name=%E6%9D%8E%E6%B5%A9&memo=helloworld&memo=helloC" var normalStr = qs.unescape(url) console.log( qs.parse(normalStr) ) //输出 { name: '李浩', memo: [ 'helloworld', 'helloC' ] }
4. querystring.escape(str)
이 API는 querystring.unescape(str)의 역연산과 동일하며, 쿼리스트링과 함께 사용되는 경우가 많습니다. stringify()
var obj = { name: '李浩', memo: ['helloworld', 'helloC'] }; console.log( qs.escape( qs.stringify(obj) ) ) // 输出 name%3D%25E6%259D%258E%25E6%25B5%25A9%26memo%3Dhelloworld%26memo%3DhelloC //连同&和=一起编码了
관련 권장 사항:
js_javascript 기술을 사용하여 QueryString을 얻는 방법 요약
node.js_node에서 querystring.parse 메서드 사용에 대한 지침. js
위 내용은 Node.js 쿼리 문자열 쿼리 문자열 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!