2012年07月07日
川俣晶の縁側ソフトウェア技術雑記total 2464 count

JSONとJSONPの意外な違い

Written By: 川俣 晶連絡先

「JSONとJSONPの意外な違いに遭遇した」

「知ってるよ。読み込み方が違うんだ」

「そこじゃない」

「えっ?」

「結局、JSONは文字列として読み込んでeval関数で評価するけど、JSONPは直接読み込んでJavaScriptコードとして評価する」

「うん。そうだよね」

「では最低限の構文の違いを除くと両者は同じなのか」

「うーん。JSONデータの前後にちょっと文字を書き足すとJSONPになるわけだろ?」

「そう。その通り。しかし、その場合に意外な違いが発生することに気づいた。しかも小さなテストデータでは分からない違いだ」

「それはなんだい?」

「安全な文字でエンコードされたバイナリーデータを含む巨大なデータを入れたとき、JSONPなら読めるのに、JSONだと読めないつまりeval関数経由ではエラーになるケースに遭遇した」

「えー」

「このことは言い換えれば、JavaScriptインタプリタの式評価部分とeval関数の動作は等価では無いことを意味する」

「本当に? IEだけってことはないの?」

「試したらSafariとFirefoxでも同じだった」

Facebook

キーワード【 川俣晶の縁側ソフトウェア技術雑記
【技術雑記】の次のコンテンツ
2012年
07月
12日
ファイルをBase64エンコードするツール by C#
3days 0 count
total 2905 count
【技術雑記】の前のコンテンツ
2012年
07月
05日
W3C File APIのreadAsDataURLの結果をXMLHttpRequestに渡せるか?
3days 0 count
total 2014 count

このコンテンツを書いた川俣 晶へメッセージを送る

[メッセージ送信フォームを利用する]

メッセージ送信フォームを利用することで、川俣 晶に対してメッセージを送ることができます。

この機能は、100%確実に川俣 晶へメッセージを伝達するものではなく、また、確実に川俣 晶よりの返事を得られるものではないことにご注意ください。

このコンテンツへトラックバックするためのURL

http://mag.autumn.org/tb.aspx/20120707154828
サイトの表紙【技術雑記】の表紙【技術雑記】のコンテンツ全リスト 【技術雑記】の入手全リスト 【技術雑記】のRSS1.0形式の情報このサイトの全キーワードリスト 印刷用ページ

管理者: 川俣 晶連絡先

Powered by MagSite2 Version 0.33 (Alpha-Test) Copyright (c) 2004-2018 Pie Dey.Co.,Ltd.