javascriptでFlashAirを活用する際にハマりやすいポイントを説明していきます.
気づいた点は追記・編集してください.
気づいた点は追記・編集してください.
FlashAirにアクセスする方法はいくつもあります.
これらは,実体としては同じものを指しますが,ブラウザから見ると異なるものです.
そのため,XMLHttpRequestなどの機能を使ってアクセスする際,これを考慮しないと通信に失敗します.
例えば,ブラウザ上は
このような場合にもっとも汎用的に使えるURLは,
この場合,(当然ですが)ルートより上のアドレスはブラウザ側が判定してくれるため,自動的に成功します.
同様の理由で,他の機器やサーバー上に配置されたHTMLなどからもアクセスできないため注意してください.
FlashAirはAccess-Control-Allow-Originを送信しません.
(Luaスクリプトは,スクリプトがResponseを生成するため,Access-Control-Allow-Originを送出させることができます)
http://flashair/
http://flashair.local/
http://192.168.0.1/
http://任意に割り当てたアドレス/などです.
これらは,実体としては同じものを指しますが,ブラウザから見ると異なるものです.
そのため,XMLHttpRequestなどの機能を使ってアクセスする際,これを考慮しないと通信に失敗します.
例えば,ブラウザ上は
http://flashair/FTLE/run.luaにアクセスしているのに,javascript上では
http://flahsair.local/FTLE/run.luaにアクセスしようとしているなど.
このような場合にもっとも汎用的に使えるURLは,
/FTLE/run.luaです.(ルート相対参照)
この場合,(当然ですが)ルートより上のアドレスはブラウザ側が判定してくれるため,自動的に成功します.
同様の理由で,他の機器やサーバー上に配置されたHTMLなどからもアクセスできないため注意してください.
FlashAirはAccess-Control-Allow-Originを送信しません.
(Luaスクリプトは,スクリプトがResponseを生成するため,Access-Control-Allow-Originを送出させることができます)
コメントをかく