ここで、私がやってしまったかの概要本当のエッジケースであると思われたよう。私はいつか私の解決策についてブログ投稿を書くことを計画していますが、まだまだ荒いです。
ようです - いくつかの奇妙な理由のために - AIが本当に他のほとんどのAdobe(CS)アプリケーションがそうすることができますしながら、HTTPリクエストを作成する可能性を持っていません。しかし、異なるアプリケーション間の通信を容易にするために、BridgeTalk(すべてのCSアプリに付属)というライブラリを使用することができます。
BridgeTalkはAdobeのBridgeアプリケーションを使用しており、シリアライズされたコードの非同期(および同期、小さなトリックを使用した)実行が可能です。
Bridgeには、外部サーバーへのリクエストに使用できるWebソケットライブラリが付属しています。私のAIスクリプトは今、小さなカスタムAPIとHTTPラッパーを通過し、私はExtendables frameworkのHTTPパーサを使って応答に対処しました。簡単にするために、私は同期要求を強制しています。
function synchFoo(foo) {
var options = {
path : '/api/foos/' + foo.uuid + 'sync',
format: 'json',
method: 'POST',
host : '127.0.0.1:3000',
data : fooDataToString(foo)
}
var response = bridgeHTTP.sendSynch(options);
return JSON.parse(response.body);
}
このアプローチは、私は全体(仕事を得ることができる唯一のものである:例として、私が作成し終わったAPIは、この(属性uuid
を持つオブジェクトfoo
を想定)のようになります
AIのバージョン)、まだかなり不安定であり、したがって、公開の準備ができていない。しかし、このソリューションの周りのプロジェクトは放棄されていますので、あなたの息を止めないでください。
私はこれを最近非同期のケースで見つけました:https://gist.github.com/mericson/6509997 – David
これはあなたのブログ記事ですか?そうでなければ、それは似たようなものです:http://selfdocumentingcode.blogspot.com/2009/05/using-adobe-bridgetalk-synchronously.html – David
いいえ、私のものではありません - 申し訳ありません。しかし私は、私が仕事中にそれをソースとして使用したと信じています。 – polarblau