01 / 例
例
namae~1a~0bnamae/a~bコード整形 / MULTIVERTO
プロパティ名を一つの JSON ポインタトークンから取得します。
01 / 例
namae~1a~0bnamae/a~b02 / ガイド
1 つの JSON ポインタトークンからプロパティ名を取得します。~1 をスラッシュとして復号し、~0 をティルドとして復号します。
入力例は name~1a~0b で、変換結果は name/a~b です。結果を使う前に、区切り文字、名前、値の型がどう変わったか確認してください。JSON Pointer トークンのエスケープ解除では、ファイルやリクエスト全体を変換する前に、小さなレコードを受け取り側のパーサーで確かめてください。1つの JSON Pointer トークンからプロパティ名を復元します。
これ以外のチルダ列は無効で拒否されます。ポインター全体では各プロパティ名を個別にエスケープし、先頭のスラッシュを付けてトークンを連結します。空トークンは許され、空文字列のプロパティ名を指します。トークンがない状態とは異なります。一般的な URL エンコードを代わりに使わないでください。パーセントエスケープは URI フラグメント表現に属し、意味の層が異なります。ポインターの一つのエスケープ済みパス部分を読み、オブジェクトのプロパティ名として使ってください。先頭のパス用スラッシュや URI フラグメント記号を付けず、符号化された部分だけを入力します。トークン a~1b は単一のプロパティ a/b の名前であり、a の子 b を選ぶものではありません。厳密な列 ~01 は、決められた順序で一度だけ復号するため、文字どおりの ~1 になります。無効なチルダ符号はそのまま残す文字ではなくエラーです。完全なポインターに複数の部分があれば、まず文字どおりのスラッシュで分け、次に各部分を個別に復号します。
ポインターのトークンを確認するには、プロパティ名をエスケープして出力を復号し、チルダやスラッシュを含め元のテキストと完全に一致するか調べてください。JSON Pointer 全体を組み立てる際は、エスケープ済みのトークン間にスラッシュを入れます。先頭のスラッシュはポインターのパスに属し、このツールに与えるトークンの一部ではありません。復号順序が重要なので、特別な入力 ~1 も別に試します。~01 を試してください。~0 より先に ~1 を復号すると、スラッシュではなく ~1 になります。単独の ~、または ~0 と ~1 以外のエスケープは拒否する必要があります。元データと結果は見た目が似ていても役割が異なります。上記の方法が定義するのは対応する範囲であり、その形式名のあらゆる拡張ではありません。厳格な受け取り側に渡すなら、多くの記録を変える前に小さな既知の例を試してください。検証に失敗した場合は元の入力と最初に報告されたエラーに戻ります。生成結果だけを編集すると原因が隠れることがあります。
ガイドを探す