検索

NodeJS の queryString の概要を共有する

Jun 26, 2017 pm 01:37 PM
javascriptnodejs

前の言葉

フロントエンドでもバックエンドでも、一般的なアプリケーション シナリオは URL 内のパラメーターの処理です。 nodeJS queryString モジュールは、クエリ文字列を処理するためのいくつかのツールを提供します。この記事ではnodeJSのqueryStringについて詳しく紹介します

var querystring = require('querystring');/*{ unescapeBuffer: [Function],
  unescape: [Function: qsUnescape],
  escape: [Function],
  encode: [Function],
  stringify: [Function],
  decode: [Function],
  parse: [Function] } */console.log(querystring);

serialization

【querystring.parse(str[, sep[, eq[, options]]])】

querystring.parse()メソッドは変換できますa URL クエリ文字列 (str) は、キーと値のペアのコレクションに解析されます。パラメーターは次のとおりです

str <string> 要解析的 URL 查询字符串。
sep <string> 用于界定查询字符串中的键值对的子字符串。默认为 '&'。
eq <string> 用于界定查询字符串中的键与值的子字符串。默认为 '='。
options <object>decodeURIComponent <function> 当解码查询字符串中百分号编码的字符时使用的函数。默认为 querystring.unescape()   
maxKeys <number> 指定要解析的键的最大数量。默认为 1000。指定为 0 则移除键数的限制</number></function></object></string></string></string>
var querystring = require('querystring');var str = 'foo=bar&abc=xyz&abc=123';
console.log(querystring.parse(str));//'{ foo: 'bar', abc: [ 'xyz', '123' ] }'

2 番目のパラメーターは、クエリ内のキーと値のペアの部分文字列を定義するために使用されます。 string

var querystring = require('querystring');var str = 'foo=bar&abc=xyz&abc=123';
console.log(querystring.parse(str,'a'));//{ foo: 'b', 'r&': '', bc: [ 'xyz&', '123' ] }

3番目のパラメータは、クエリ文字列のキーと値の部分文字列を定義するために使用されます

var querystring = require('querystring');var str = 'foo=bar&abc=xyz&abc=123';
console.log(querystring.parse(str,'&','c'));//{ 'foo=bar': '', ab: [ '=xyz', '=123' ] }

[注意] querystring.parse() メソッドによって返されるオブジェクトは、JavaScript の Object を継承しません。 これは、obj.toString()、obj.hasOwnProperty() などの一般的な Object メソッドが定義されておらず、使用できないことを意味します

デフォルトでは、クエリ文字列内のパーセントでエンコードされた文字は UTF-8 を使用すると見なされます。エンコーディング。 別の文字エンコーディングを使用する場合は、decodeURIComponentオプションを指定する必要があります

var querystring = require('querystring');//{ w: '����', foo: 'bar' }console.log(querystring.parse('w=%D6%D0%CE%C4&foo=bar', null, null,{ decodeURIComponent: 'gbkDecodeURIComponent' }));

【querystring.stringify(obj[, sep][, eq][, options])】

querystring.stringify()メソッドはquerystring.parse() メソッドの逆操作は、オブジェクト自体のプロパティを走査することによって、指定された obj から URL クエリ文字列を生成します。 escape(str)]

querystring.escape()メソッドは、encodeURIComponentメソッドと同じように、指定されたstrに対してURLパーセントエンコーディングを実行します
querystring.escape()メソッドはquerystring.stringify()によって使用され、通常は使用されません直接使用されます。外部に公開している理由は、必要に応じて querystring.escape に関数を代入することでエンコード実装を書き換えることができるためです str 上で URL パーセントエンコード文字のデコードを実行します
querystring.unescape() メソッドを使用します。 querystring.parse() によって実行され、通常は直接使用されません。これが外部に公開されている理由は、querystring.unescape に関数を割り当てることで、必要に応じてデコード実装をオーバーライドできるためです。

querystring.unescape()メソッドは、デフォルトでJavaScriptの組み込みdecodeURIComponent()メソッドを使用してデコードします

obj <object> 要序列化成一个 URL 查询字符串的对象
sep <string> 用于界定查询字符串中的键值对的子字符串。默认为 '&'eq <string> 用于界定查询字符串中的键与值的子字符串。默认为 '='options
    encodeURIComponent <function> 当把对URL不安全的字符转换成查询字符串中的百分号编码时使用的函数。默认为 querystring.escape()</function></string></string></object>

GET

取得要求されたデータはURLに保存されます

var querystring = require('querystring');//'foo=bar&baz=qux&baz=quux&corge='console.log(querystring.stringify({ foo: 'bar', baz: ['qux', 'quux'], corge: '' }));

var querystring = require('querystring');//'foo:bar;baz:qux'console.log(querystring.stringify({foo: 'bar', baz: 'qux'}, ';', ':'));

POST

postでリクエストされたデータはバッファに書き込まれ、リクエストのデータイベントと終了イベントを通じてデータの結合処理が必要です

var querystring = require('querystring');
console.log(encodeURIComponent('测试'));//%E6%B5%8B%E8%AF%95console.log(querystring.escape('测试'));//%E6%B5%8B%E8%AF%95

以上がNodeJS の queryString の概要を共有するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
C/CからJavaScriptへ:すべてがどのように機能するかC/CからJavaScriptへ:すべてがどのように機能するかApr 14, 2025 am 12:05 AM

C/CからJavaScriptへのシフトには、動的なタイピング、ゴミ収集、非同期プログラミングへの適応が必要です。 1)C/Cは、手動メモリ管理を必要とする静的に型付けられた言語であり、JavaScriptは動的に型付けされ、ごみ収集が自動的に処理されます。 2)C/Cはマシンコードにコンパイルする必要がありますが、JavaScriptは解釈言語です。 3)JavaScriptは、閉鎖、プロトタイプチェーン、約束などの概念を導入します。これにより、柔軟性と非同期プログラミング機能が向上します。

JavaScriptエンジン:実装の比較JavaScriptエンジン:実装の比較Apr 13, 2025 am 12:05 AM

さまざまなJavaScriptエンジンは、各エンジンの実装原則と最適化戦略が異なるため、JavaScriptコードを解析および実行するときに異なる効果をもたらします。 1。語彙分析:ソースコードを語彙ユニットに変換します。 2。文法分析:抽象的な構文ツリーを生成します。 3。最適化とコンパイル:JITコンパイラを介してマシンコードを生成します。 4。実行:マシンコードを実行します。 V8エンジンはインスタントコンピレーションと非表示クラスを通じて最適化され、Spidermonkeyはタイプ推論システムを使用して、同じコードで異なるパフォーマンスパフォーマンスをもたらします。

ブラウザを超えて:現実世界のJavaScriptブラウザを超えて:現実世界のJavaScriptApr 12, 2025 am 12:06 AM

現実世界におけるJavaScriptのアプリケーションには、サーバー側のプログラミング、モバイルアプリケーション開発、モノのインターネット制御が含まれます。 2。モバイルアプリケーションの開発は、ReactNativeを通じて実行され、クロスプラットフォームの展開をサポートします。 3.ハードウェアの相互作用に適したJohnny-Fiveライブラリを介したIoTデバイス制御に使用されます。

next.jsを使用してマルチテナントSaaSアプリケーションを構築する(バックエンド統合)next.jsを使用してマルチテナントSaaSアプリケーションを構築する(バックエンド統合)Apr 11, 2025 am 08:23 AM

私はあなたの日常的な技術ツールを使用して機能的なマルチテナントSaaSアプリケーション(EDTECHアプリ)を作成しましたが、あなたは同じことをすることができます。 まず、マルチテナントSaaSアプリケーションとは何ですか? マルチテナントSaaSアプリケーションを使用すると、Singの複数の顧客にサービスを提供できます

next.jsを使用してマルチテナントSaaSアプリケーションを構築する方法(フロントエンド統合)next.jsを使用してマルチテナントSaaSアプリケーションを構築する方法(フロントエンド統合)Apr 11, 2025 am 08:22 AM

この記事では、許可によって保護されたバックエンドとのフロントエンド統合を示し、next.jsを使用して機能的なedtech SaaSアプリケーションを構築します。 FrontEndはユーザーのアクセス許可を取得してUIの可視性を制御し、APIリクエストがロールベースに付着することを保証します

JavaScript:Web言語の汎用性の調査JavaScript:Web言語の汎用性の調査Apr 11, 2025 am 12:01 AM

JavaScriptは、現代のWeb開発のコア言語であり、その多様性と柔軟性に広く使用されています。 1)フロントエンド開発:DOM操作と最新のフレームワーク(React、Vue.JS、Angularなど)を通じて、動的なWebページとシングルページアプリケーションを構築します。 2)サーバー側の開発:node.jsは、非ブロッキングI/Oモデルを使用して、高い並行性とリアルタイムアプリケーションを処理します。 3)モバイルおよびデスクトップアプリケーション開発:クロスプラットフォーム開発は、反応および電子を通じて実現され、開発効率を向上させます。

JavaScriptの進化:現在の傾向と将来の見通しJavaScriptの進化:現在の傾向と将来の見通しApr 10, 2025 am 09:33 AM

JavaScriptの最新トレンドには、TypeScriptの台頭、最新のフレームワークとライブラリの人気、WebAssemblyの適用が含まれます。将来の見通しは、より強力なタイプシステム、サーバー側のJavaScriptの開発、人工知能と機械学習の拡大、およびIoTおよびEDGEコンピューティングの可能性をカバーしています。

javascriptの分解:それが何をするのか、なぜそれが重要なのかjavascriptの分解:それが何をするのか、なぜそれが重要なのかApr 09, 2025 am 12:07 AM

JavaScriptは現代のWeb開発の基礎であり、その主な機能には、イベント駆動型のプログラミング、動的コンテンツ生成、非同期プログラミングが含まれます。 1)イベント駆動型プログラミングにより、Webページはユーザー操作に応じて動的に変更できます。 2)動的コンテンツ生成により、条件に応じてページコンテンツを調整できます。 3)非同期プログラミングにより、ユーザーインターフェイスがブロックされないようにします。 JavaScriptは、Webインタラクション、シングルページアプリケーション、サーバー側の開発で広く使用されており、ユーザーエクスペリエンスとクロスプラットフォーム開発の柔軟性を大幅に改善しています。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません