ForHosting KIT · 開発者向けツール

クエリ文字列をJSONに変換

クエリ文字列は見分けやすい一方、符号化された文字、空の値、繰り返されるフィルター、アプリ固有のフラグが含まれると確認しにくくなります。このコンバーターは、コンパクトな転送形式を、読取り、コピー、比較、デバッグに利用できる構造化JSONオブジェクトへ変換します。パーセントエスケープをUTF-8として復号し、プラス記号を空白として扱い、空の値を保持します。同名のパラメーターは元の順序を保った配列になります。処理は決定的であり、リクエストの調査、テストデータ、ログ確認、開発ツールに安心してご利用いただけます。

● Beta無料・ブラウザ内で実行
ご利用方法 ウェブAPIメールTelegramアプリ 近日

圧縮されたパラメーターを確認しやすいオブジェクトにします

クエリ文字列はデータ転送のための形式であり、人が読みやすい形式ではありません。ブラウザーやクライアントは、検索語、複数の選択タグ、空の任意項目、国際文字を含む地名を、1本の短い行で送信することがあります。URLのパスより後ろの部分を、先頭の疑問符付きまたは疑問符なしでコンバーターに貼り付けてください。結果では、各パラメーターが個別のJSONプロパティーに分けられます。等号がないパラメーターも、等号の後ろが空のパラメーターと同様に、空文字列の値として保持されます。アンパサンドの間にある空の区間はパラメーターを含まないため無視されます。そのため、値や空欄を失わずにアプリの状態と出力を比較でき、カウンターで異なるキーの数と処理したペアの総数を確認できます。パーサーは送信先サーバーへ接続せず、業務上の型も推測しません。true、42、nullなども文字列のままです。この一貫した動作により、JSONはクエリが実際に運んだ内容を忠実に示します。

復号方法と重複キーの扱いをご確認ください

各キーと値は、一般的なWebフォームの規則に従って個別に復号されます。プラス記号は空白になり、%20のようなパーセントエスケープや複数バイトのUTF-8シーケンスは意図された文字になります。等号が区切りとして働くのは各ペアの最初の1個だけです。そのため、値に別の等号が含まれていても再分割されません。重複するキーは上書きされず、最初の値は文字列、2個目からは配列となり、以後の値は受信順に追加されます。たとえばtag=sale&tag=newは、sale、newの順のtag配列になります。フィルター、チェックボックス群、複数選択を同じ項目名で直列化するフレームワークの確認に便利です。不正なパーセントエスケープは部分的な結果を返さず入力エラーとなり、有効なUTF-8にならない符号化バイトも拒否されます。厳密に失敗させることで、もっともらしい結果が不正なリクエストを隠す問題を防ぎます。pair_countは重複を含むペア数、key_countは異なる復号済みキー数です。

テスト、ログ、リクエスト診断に結果をご活用ください

変換されたオブジェクトは、コードが処理する前にクエリの内容を把握したい場面で役立ちます。API開発では、失敗したリクエストのクエリ文字列を貼り付け、復号済みJSONをルートが想定するパラメーターと比較できます。自動テストでは、代表的な文字列を安定したデータに変換し、重複フィルター、国際文字、プラス記号、空の項目が期待どおりの形で届くかを検証できます。ログ調査でも、同じキーが何度も現れる長い符号化行より、構造化された形式のほうが読み取りや差分比較が容易です。本コンバーターはスキーマに基づく型変換を意図的に行いません。数値、真偽値、日付、角括弧による入れ子規則が必要な場合は、変換後にアプリ固有の検証を適用してください。汎用ツールが送信者の指定していない意味を推測することを防げます。JavaScript内部名に似たプロパティー名も安全にデータとして扱います。簡単な確認にはブラウザー版を、パイプラインやテスト環境で同じ決定的変換を繰り返す場合は$0.002のAPIをご利用ください。

APIリクエストをデバッグします

クライアントが送信した正確なクエリを復号し、キー、空の値、重複フィルターをルート仕様と比較できます。

安定したテストデータを作成します

代表的なクエリ文字列を決定的なJSON結果へ変換し、結合テストや回帰テストにご利用いただけます。

ログ内の符号化データを確認します

検索、リダイレクト、計測連携を調べる前に、符号化されたパラメーターを読みやすくします。

コンバーターの料金はいくらですか?

ブラウザー版は無料です。APIリクエストには公開基本料金の$0.002が適用されます。

先頭の疑問符を含めてもよいですか?

はい。入力は疑問符から始めることも、その後ろの文字列だけにすることもできます。

重複するパラメーター名はどのように表されますか?

キーが1回なら文字列値になり、繰り返されると元の順序を保った値の配列になります。

プラス記号とパーセント表記は復号されますか?

はい。プラス記号は空白になり、有効なパーセント表記はキーと値の両方でUTF-8として復号されます。

数値や真偽値はJSON型に変換されますか?

いいえ。スキーマを推測して送信データを変えないよう、パラメーターは文字列のまま返されます。

このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。

POSThttps://api.kit.forhosting.com/dev/query-string-to-json

Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。

curl -X POST https://api.kit.forhosting.com/dev/query-string-to-json \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"?search=blue+shoes&tag=sale&tag=new&city=S%C3%A3o+Paulo&empty="}'
{
  "text": "?search=blue+shoes&tag=sale&tag=new&city=S%C3%A3o+Paulo&empty="
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev.query_string_to_json",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。

1リクエストあたり$0.002

単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。

HTTPコード意味
401unauthorizedAPIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。
402insufficient_balance残高が不足しています。チャージ後に再度お試しください。
404unknown_type指定されたタスクタイプは存在しません。タイプ名を確認してください。
429rate_limitedリクエストが多すぎます。しばらく待ってから再度お試しください。

KITの完全なドキュメントを見る →