2

私は、ユーザーをメールマガジンに登録するための非常にシンプルなフラッシュアプ​​リ(AS 2)を書いています。それが機能する方法は、LoadVarsを使用して、POSTを介してユーザーの電子メールアドレスで(同じドメインの)PHPスクリプトをヒットすることです。次に、PHPスクリプトは、curlを介して情報を別のドメイン(ニュースレターのメーラーURL)に渡し、ユーザーをサインアップします。

これまでのところ、非常に優れており、テスト対象のコンピューターの約70%で動作します(ローカルではなく、Webサイトからライブでテストされています)。ただし、一部のコンピューターでは、それらのコンピューターから送信された電子メールアドレスがサブスクライバーリストに表示されないため、LoadVars.sendAndLoad呼び出しが行われているようには見えません。Flashアプリとまったく同じように動作するベアボーンHTMLフォーム(同じ変数を持つ同じPHPスクリプトへのPOSTなど)を作成したため、PHPスクリプトはこれらのコンピューターでも機能し、すべてのコンピューターで機能することを知っています。

関連するASは次のとおりです。

submit_btn.onRelease = function(){
    submitOutAnimation();
    this.enabled = false;
    var sendvar_lv:LoadVars = new LoadVars();
    var loadvar_lv:LoadVars = new LoadVars();
    loadvar_lv.onLoad = function(success:Boolean){
        gotoAndStop("successful");
    }
    sendvar_lv.email = entryField_mc.myAdd.text;
    sendvar_lv.sendAndLoad("http://notmyrealdomainname.com/passthrough.php?ck="+new Date().getTime(),loadvar_lv,"POST");
}

これは、Flashクライアント設定のセキュリティ上の問題でしょうか?他に何かアイデアはありますか?同じFlashPlayerバージョンを使用していると仮定すると、異なるコンピューター間で(パフォーマンス以外の)Flash再生に大きな違いはないという印象を受けましたが、この経験はその幻想を打ち砕きます...

4

2 に答える 2

2

同じドメイン(サブドメインであっても)にないスクリプトにアクセスしようとする場合は、クロスドメインポリシーファイルをサーバールート(crossdomain.xml)に配置する必要があります。

続きを読む: http: //kb.adobe.com/selfservice/viewContent.do?externalId = tn_14213

于 2009-01-15T14:52:23.043 に答える
2

個別のサブドメインと見なされるため、ユーザーが「www」プレフィックスを入力するかどうかによって異なります。Flashが同じサーバー上にある場合は、「http://notmyrealdomainname.com」を削除して、passthrough.phpへの相対パスを使用してみませんか?

于 2009-01-15T15:00:42.903 に答える