JSONで改行を表現するときは \\n
つまり \n
を \
でエスケープせよということなのだが、他にもエスケープする文字は何があるのかのメモ
出典
RFC 8259 - The JavaScript Object Notation (JSON) Data Interchange Format
対象の文字
- 『
"
(ダブルコーテーション)』 - 『
\
(バックスラッシュ)』 - 『
/
(スラッシュ)』 - 『
\b
(バックスペース)』 - 『
\f
(改ページ)』 - 『
\n
(改行)』 - 『
\r
(キャリッジリターン)』 - 『
\t
(タブ)』
余談
Railsなどはリクエストパラメータとして受け取ったときは勝手にデコードするし、レスポンスパラメータとしてJSON返すときは勝手にエンコードしてくれたりする。
ただし、iOS/Androidのネットワークライブラリだと、そこまでよしなにやってくれなかったりするので、気をつけること。