タグ

JSONに関するdeg84のブックマーク (6)

  • 全てがJSONになる - ✘╹◡╹✘

    TL;DR JSON Schemaを使ってこういうことが実現可能になった。 ダミーAPIサーバの提供 ドキュメントの自動生成 APIクライアントの動的定義 APIサーバのバリデータの動的定義 APIサーバのレスポンスの自動テスト JSON Schemaとは JSON SchemaというのはあるJSONのデータ構造を記述するための方法および書式の仕様で、 JSON SchemaもJSONで記述される。 これを利用すれば、リソースベースの(=RESTfulライクな)APIの仕様が簡便に記述できる。 例えば、我々のAPIレシピとユーザというリソースを扱っていて、 それぞれCRUDのAPIを備えており、レシピはidとtitleとdescriptionという属性を持つ、 という旨をJSON Schemaで表現できる。 なんで最近ちょっと流行ってんの Mobile First、 Service Or

    全てがJSONになる - ✘╹◡╹✘
  • 機密情報を含むJSONには X-Content-Type-Options: nosniff をつけるべき - 葉っぱ日記

    WebアプリケーションにおいてJSONを用いてブラウザ - サーバ間でデータのやり取りを行うことはもはや普通のことですが、このときJSON内に第三者に漏れては困る機密情報が含まれる場合は、必ず X-Content-Type-Options: nosniff レスポンスヘッダをつけるようにしましょう(むしろ機密情報かどうかに関わらず、全てのコンテンツにつけるほうがよい。関連:X-Content-Type-Options: nosniff つかわないやつは死ねばいいのに! - 葉っぱ日記)。 例えば、機密情報を含む以下のようなJSON配列を返すリソース(http://example.jp/target.json)があったとします。 [ "secret", "data", "is", "here" ] 攻撃者は罠ページを作成し、以下のようにJSON配列をvbscriptとして読み込みます。もちろ

    機密情報を含むJSONには X-Content-Type-Options: nosniff をつけるべき - 葉っぱ日記
    deg84
    deg84 2013/05/17
    そういえばこんなヘッダーあったね
  • TwitterのステータスIDが53bitを越えたお話 - tmytのらくがき

    僕の記事の間違いを指摘していただいているすばらしい記事です。僕の記事よりこちらの記事をご覧ください。 http://archive.guma.jp/2010/12/twitter-json.html 先日、29日の7時過ぎごろにTwitterのステータスIDが53bitを越えました。 こんな中途半端なビット数を超えただけでなぜこんな記事にするかというと、一部のクライアントで動作がおかしくなることがあるからです。 (14:14 追記しました) (14:31 もひとつ追記しました) TwitterAPIはXMLとJSONの2種類で結果を取得できます。このうちXMLで処理してる場合は内部で64bit INTで処理していれば特に問題は起きません。 問題が起きるのはJSONの場合です。JSONはJavascriptでevalすればそのまま中身が取り出せることからもわかるように、Javascript

    TwitterのステータスIDが53bitを越えたお話 - tmytのらくがき
  • CakePHPからJSONをつかうモデルをつくった - UNIX的なアレ

    JSONでシリアライズされているAPIをたたくようなモデルを作ってみました。ローカルに配置しているJSONのファイルにも対応しています。 キャッシュをさせるような仕組みになっているので、多数叩くような場合にも効果的です。 modelの下に、json.phpというファイル名で保存してください。 app/models/json.php <?php class Json extends AppModel { var $name = 'Json'; var $useTable = false ; /* * jsonデータの取得 * @param string JSONファイルへのパス * @param boolean キャシュさせるか * @return mixed */ function find( $path , $cache = false ){ if ( !substr_count( $p

    CakePHPからJSONをつかうモデルをつくった - UNIX的なアレ
  • Ajax - IE8にもJSON入ってます。使えるとは限らないけど : 404 Blog Not Found

    2010年08月17日12:00 カテゴリLightweight Languages Ajax - IE8にもJSON入ってます。使えるとは限らないけど はい、私の勘違いでした。 はてなブックマーク - Twitter URL Log JSONはIE8にも入ってるような IE8にも確かに native JSON が入ってます。 Native JSON in IE8 - IEBlog - Site Home - MSDN Blogs ですが、使えるとは限らないのです。 Compatibility mode (別名Quirks mode) では、JSONオブジェクトは無効になります。これ、豆知識な。心に血豆が出来たけど。 以下、デモです。 var json = {string:'json',number:2,object:{array:[true,false,null]}}; var str

    Ajax - IE8にもJSON入ってます。使えるとは限らないけど : 404 Blog Not Found
    deg84
    deg84 2010/08/17
    「なんでこんな仕様になってるんだろ…」そんなのIEだからです。としか言いようが・・・。
  • Ajax - Goodbye, JSONP. Hello, Access-Control-Allow-Origin : 404 Blog Not Found

    2010年08月17日06:45 カテゴリLightweight Languages Ajax - Goodbye, JSONP. Hello, Access-Control-Allow-Origin もうそろそろJSONPとはお別れできるのではないかと思い立ったので。 XMLHttpRequestとその問題 AjaxといえばXHRの愛称で親しまれているXMLHttpRequestですが、これには一つ重大な欠点がありました。 これを発行するDHTMLページのドメインが、Request先のドメインと一致する必要があったのです。いわゆる Same Origin Policy というやつです。おかげでサイトをまたがって使えなかったのです。これではマッシュアップできない。どうしよう。 JSONPとその問題 そこで生まれたのが、JSONPという手法です。 これは、scriptノードを追加した時に、単

    Ajax - Goodbye, JSONP. Hello, Access-Control-Allow-Origin : 404 Blog Not Found
    deg84
    deg84 2010/08/17
    proxy挟まないと意味ないんだったら、そのproxyで処理しちゃえばいいじゃんと思ったけど、レスポンスヘッダに「Access-Control-Allow-Origin: *」が必要なのね。勘違い。問題はセキュリティか
  • 1