1

ご存じかもしれませんが、Flash アプリからカスタム HTTP リクエストを送信するのは常に苦労していました。たとえば、Basic Auth で保護された Web サービスがある場合、POST 要求のみがカスタム ヘッダーを持つことができるため、GET 要求を使用して Flash から要求することはできません。これは本当に面倒です。

Javascriptを使用してHTTPリクエストを送信するためにExternalInterfaceを使用しようとした人はいますか? アイデアは、リクエストを送信してデータをフラッシュに戻すように JSmethod に依頼することです。

何かご意見は?

4

1 に答える 1

3

はい、可能です。Facebook JS SDK を使用してデータを swf に戻すために数回実行しました。

通常、次のようにして SWF から JS 関数を呼び出します。

ExternalInterface.call("getFriends",params);

JS 側:

function getFriends(params)
{
    FB.api('me/friends',function(response){
         mySwf.onGetFriendsComplete(response);
    });
}

SWF 側で JS からの呼び出しを受信するには:

ExternalInterface.addCallback("onGetFriendsComplete",onGetFriendsComplete);

private function onGetFriendsComplete(data)
{
   trace(data);
}

SWF をローカルで実行している場合は、ExternalInterface 呼び出しの前にチェックを入れて、利用可能であることを確認することができます。

if(ExternalInterface.available)
    ExternalInterface.call(...);
于 2013-02-26T19:50:14.780 に答える