Javascript URLSearchParamsでネストパラメータ生成

2021年5月4日火曜日

javascript

t f B! P L

概要

クエリパラメータを作るJavascriptのURLSearchParamsでネストしたパラメータを作りたい

{a: {b: 1}}

みたいなやつをパラメータにしたい。
そのまま渡しても使えない。object+Objectになっちゃう

new URLSearchParams({
  a: {b: 1}
}).toString();
"a=%5Bobject+Object%5D"

作成方法

JSON.stringifyでネストしたオブジェクトを文字列にする。

new URLSearchParams({
  a: JSON.stringify({b: 1})
}).toString();
"a=%7B%22b%22%3A1%7D"

サーバサイドには文字列化したオブジェクトが渡ってくるので文字列をパースする。Rubyだと以下

JSON.parse(渡ってきた文字列)

本当はパースしないでそのまま使いたいけど、他に良いやり方がわからない・・・

自己紹介

Webエンジニアをやっています。日々思ったことや、読書レビュー、IT系の記事などを書き連ねています

広告

[書籍] ティムクック アップルをさらなる高みへと押し上げた天才 感想まとめ

   こういう人におすすめ ティムクックのことを知らないという人 アップル、ジョブズのファン 概要 2011年 ティムクック がAppleのCEOを引き継ぎました。 クック の知名度は低く、批評家たちは ジョブズ なしではAppleは終わりを迎えるだろうと危惧していました。 しか...

QooQ