2

Silverlight から PHP スクリプトにファイルをアップロードするためのコードの基礎として 、公式の Microsoft の例とこの例を使用しています。

を呼び出し**HttpWebRequest.BeginGetRequestStream()**、ファイル ストリームを介してファイルを書き込んでから、呼び出し**HttpWebRequest.BeginGetResponse()**て応答を取得しています。HttpWebResponse.EndGetResponse()を呼び出すと、毎回次の例外が発生します。

{System.Security.SecurityException ---> System.Security.SecurityException: Security error.
   at System.Net.Browser.BrowserHttpWebRequest.InternalEndGetResponse(IAsyncResult asyncResult)
   at System.Net.Browser.BrowserHttpWebRequest.<>c__DisplayClass5.<EndGetResponse>b__4(Object sendState)
   at System.Net.Browser.AsyncHelper.<>c__DisplayClass2.<BeginOnUI>b__0(Object sendState)
   --- End of inner exception stack trace ---
   at System.Net.Browser.AsyncHelper.BeginOnUI(SendOrPostCallback beginMethod, Object state)
   at System.Net.Browser.BrowserHttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
   at FileUpload.FileUploadProcess.GetReponseCallback(IAsyncResult AsyncResult)}

アクセスを許可するベース ディレクトリに clientaccesspolicy.xml ファイルと crossdomain.xml ファイルの両方があります。私は Fiddler を実行し、clientaccesspolicy.xml ファイルをダウンロードするのを見たので、正しくヒットしています。

PHP ファイルは Apache2 で実行されており、例が示すようにデータを読み取るために php://input で fread を実行するだけです。データを受信して​​いないため、SecurityException が強制的に書き込みを中止していると思われます。

誰かがこの問題を以前に見たことがあり、解決策の正しい方向に私を向けることができますか?

4

1 に答える 1

0

アップロードしたファイルを保存する予定のディレクトリへの書き込みアクセス権が webserver/php アプリケーションにあることを確認しましたか?

これにより、途中で中止される可能性があります。

于 2012-05-17T20:48:33.233 に答える