タグ

jsonpに関するsatojkovicのブックマーク (10)

  • JavaScript/クロスドメイン制限の解除 - WebTips

    Prev Next JavaScript クロスドメインというのは、違うドメイン(yahoo.comやgoogle.comのようなURLのホスト部分)間で諸々行なう事です。AJAXではXMLHttpRequestというメソッドを使って外部のファイルを読みこむ事が出来ますが、セキュリティの関係上、ドメインが違うファイルを読込む事は出来ない仕様になっています*1。これらを回避しなければ、スクリプトが置いてあるサーバ以外からファイルを読込む事は出来ないと言う事になります。いわゆるWEBサービスでは、さまざまなAPIが公開されていますが、せっかく公開されていてもココに制限があっては使えません。クロスドメイン制限を解除する方法を下記にまとめました。 PHPCGI経由にする † 比較的安全かつ設定等も簡単なので、最も一般的な方法かもしれません。ただ、CGI等が使用出来る環境でなければならないし、外部

    satojkovic
    satojkovic 2009/11/20
    クロスドメイン制約の回避方法、CGI, Flash, JSONP
  • Web APIって何?

    Web APIとJSON Web上ではネットショッピング、ブログ、SNSなどさまざまなサービスが提供されています。これらのサービスの中にはWebブラウザから利用するだけでなく、サービスの機能の一部をプログラムから利用可能なAPI(Web API)として提供しているものもあります。Web開発者はWeb APIを利用したアプリケーションを開発したり、既存のWebサイトにWeb APIを利用した機能を追加することなどが可能です。 なお、Web APIを使用し、複数のサービスの機能を組み合わせたり、独自の機能を追加したサービスを構築することをマッシュアップと呼びます。 これらのWeb APIの多くはXMLで情報を返すものが多いのですが、中にはJSONで情報を返却するWeb APIも存在します。そこで、今回はJSONを使用するWeb APIの利用方法を紹介します。 Ajaxのクロスドメイン制約 しか

    satojkovic
    satojkovic 2009/11/20
    クロスドメイン制約を回避するJSONP。sript要素のsrc属性でJSONデータを引数に取る関数を呼び出す外部JavaScriptをインポート。script要素のため別ドメインのファイル参照可
  • JSON and JSONP | Shinta's Site

    JavaScript での利用方法 JSON形式の文字列を JavaScript で利用するのはとても簡単で、eval()関数で JavaScriptのオブジェクトに変換することで利用可能になります。 var jsonData = '{"type" : ["JSON", "XML", "YAML"]}'; var obj = eval('(' + jsonData + ')'); alert(obj.type[1]); JSONを外部ファイルに記述しておき、XMLHttpRequest を利用して取得することも可能です(XMLHttpRequest部分は jQuery を利用)。 {"type" : ["JSON", "XML", "YAML"]} $.ajax({ url: "/data/jsonData.json", success: function(jsonText){ var o

  • JSONでなくてJSONP[JSON with Padding](クロスドメイン解決) - suVeneのアレ

    JSON(JavaScript Object Notation)ってのは、Javascipt扱う人ならば大体知っていると思う。 簡単に言えば、JavaScript のデータ互換フォーマットの事。 { "hoge": 1, "fuga": ["a", "b", "c"] }みたいなフォーマット。 参考) Collection & Copy – [翻訳]JSON入門 JavaScript++かも日記 – JSON/簡単なテスト:基 これは確かに、同一ドメインでクライアントに渡すデータとしては有効で、レスポンスをそのまま eval して使えるので便利なのだ。(prototype.js では Ajax.Request.prototype.evalJSON() を利用すれば JavaScript のオブジェクトになる) ただ、JavsScript ではセキュリティの問題でクロスドメインでのデータ通

  • 英文ブログ記事"Remote JSON - JSONP"の解説……というか解析結果? 【▲→川俣晶の縁側→ソフトウェア→技術雑記】

    今更という話ではありますが。 JSONPを正しく理解しようと思って、Remote JSON - JSONPを読んだところ、全く意味が理解できず、敗退しました。 というわけで、手間を惜しんだら負けなのかと思い、いい加減で当てにならない日語訳(後述)をやってみました。しかし、それでも分かりません。 いろいろ苦闘してやっと理解しました。 結論としては、「ソースコードの断片しか提示していないので、全体像が見えないとコードを追えない」「del.icio.us JSON APIの理解を前提としている」「(英文が難しくて読み取れないよ)」という2つ(3つ)の問題が理解を妨げていたことが分かりました。 一応、いい加減な和訳は最後に付けるとして、理解した内容を簡単にまとめておきます。サンプルソースは、原文のものをそのまま使います。 間違い等あれば、ご教示ください。 JSONPってざっくばらんに何? § J

  • きまぐれ日記: Ajax IME ブックマークレット

    Ajax IME ブックマークレットを作ってみました.右クリックしてブックマークに登録してみてください. Ajax IME ブックマークにアクセスするだけで現在表示しているページにある textarea と inputbox が Ajax IME 経由で入力可能になるはずです.成功すれば2秒ほどで textarea の色が変わって Ajax IME 入力状態になります.Alt-O で元に戻ります. たいていはうまくいくようですが,まだまだ完璧ではなくて CSS がらみから入力のカーソル位置が激しくずれたり,javascript のイベントがフックできなくて変化なしといったことが頻発します.気長に修正していくつもりですが,みなさんのフィードバックもお待ちしております. Mixi の日記投稿や Movable Type の投稿も若干癖がありますが問題なかったです.海外からの日記更新がかなり楽に

  • suVeneのあれ: JSONでなくてJSONP[JSON with Padding](クロスドメイン解決)

    2006年08月27日 JSONでなくてJSONP[JSON with Padding](クロスドメイン解決) JSON(JavaScript Object Notation)ってのは、Javascipt扱う人ならば大体知っていると思う。 簡単に言えば、JavaScript のデータ互換フォーマットの事。{ "hoge": 1, "fuga": ["a", "b", "c"] }みたいなフォーマット。 参考) Collection & Copy - [翻訳]JSON入門 JavaScript++かも日記 - JSON/簡単なテスト:基 これは確かに、同一ドメインでクライアントに渡すデータとしては有効で、レスポンスをそのまま eval して使えるので便利なのだ。(prototype.js では Ajax.Request.prototype.evalJSON() を利用すれば JavaScr

  • http://chikura.fprog.com/index.php?UID=1155282509

    satojkovic
    satojkovic 2006/11/29
    XMLHttpRequestが実装されていないブラウザ(携帯フルブラウザ、DSブラウザ)でajax。
  • ウノウラボ Unoh Labs: Dojoで簡単にクロスドメインAjaxを実現

    こんにちわ、hideです。 最近、JavaScriptライブラリのDojoを使い初めて、その便利さに目覚めてしまいました。Ajaxで使用される通常のXMLHttpRequestではセキュリティ上の理由から、現在表示しているページ以外のドメインに対してリクエストを送ることができません。そこで考え出されたのが、JSONP(JSON with padding)という方法です。JavaScriptのインクルードは、同一ドメインでなくても読み込めるという性質を利用しています。 まずは下のボタンを押してみてください。実際にYahoo!から画像検索が実行されます。サーバを介さずにブラウザから直接Yahoo!APIを呼び出しているところがポイントです。 簡単に説明するとこういう仕組みです。次のようにリクエスト時のパラメータとして、callback関数を指定します。 http://example.c

  • JSONP

    前回のエントリで触れたJSONP。初出はRemote JSON - JSONPというMochiKitの中の人によるエントリ(多分。一言で言うなら「JSONデータを括弧でくくった上でこっちが指定した文字列を頭につけて返してね?」というもの。文章で説明するとわけわからん。 つまり、 http://example.com/data.json?jsonp=beverly_hills とリクエストしたら、 beverly_hills({ foo: 'This is foo.', bar: 'This is bar.', foobar: 'This is foobar.' }); と返す。また、 http://example.com/data.json?jsonp=beverly_hills%5B90210%5D とリクエストしたら、 beverly_hills[90210]({ foo: 'This

    JSONP
  • 1