JavaScriptからURLを取得するには、代わりにIDを使用してみてください。そのIDをサーバーサイドでURLに変換する必要があります。次のような単純な配列を使用できます。
function getLink($songID) {
$decodeArray=array(
1=>"www.mysite.com/myfirstsong.mp3",
2=>"www.othersite.net/othersong.mp3");
return $decodeArray[$songID];
}
die(getLink($_GET['songID']));//send back the URL
または、その翻訳phpコード内でデータベースを使用できます(上記)
この「応答サービス」を実行する方法は2つあります。1)XMLHttpRequestに(phpスクリプトからの)urlを使用して応答し、戻り値をjavascriptからフラッシュクライアント側(上記のコードのように)に一時停止するか、2) Javascriptへの「OK」ステータスメッセージにのみ応答し、URLをフラッシュプレーヤーに直接送信します。これを行うには、Actionscriptで少しコーディングできる必要があります。
問題は、実際の曲の場所(その曲を見つけることができる読み取り可能なURL文字列)についてクライアント(またはFlash)に通知する必要があるため、クライアントに戻って、スニファー(パケットアナライザー)ネットツール。上記のコードの場合、そのphpスクリプトを直接クエリして、スニッフィングすることなく画面上の回答を読み取ることができます。
これを防ぐには、httpsを介してFlashと直接通信する必要があるか(動作するかどうかはわかりません)、URLをまったく送信せず、代わりにFlash間のソケット接続を使用してその曲のコンテンツをFlashアプリケーションに直接ストリーミングします。プレーヤーのクライアントサイドと(自家製の)phpソケットサーバー。