1

ファイルのアップロードを含む html フォームがあります。フォームが送信されたら、curl で再送信します。私のREST APIはリクエストを受け取り、$_FILES['image']['error']それを確認すると、「ファイルの一部のみがアップロードされました」という3が表示されます。REST サービスの前は問題なく自分のサイトに画像をアップロードしていました。

明らかに、ローカルホストでテストしましたが、Apache を使用していましたが、問題なく動作しました。

現在、IIS 7 を使用しています。iis の curl lib を確認しましたが、リクエストは問題なく送信されます...

これを修正するための IIS 構成またはコードを探しています...

$header = array("Content-type: multipart/form-data");

$tmpfile = $_FILES['image']['tmp_name'];
$filename = basename($_FILES['image']['name']);
$type = $_FILES['image']['type'];
$size = $_FILES['image']['size'];

$data = array(
            'image' => '@' . $tmpfile . ';filename='.$filename.';type='.$type.';size='.$size.';' );

 curl_setopt($ch,CURLOPT_HTTPHEADER,$header);
 curl_setopt($ch, CURLOPT_POST, 1);  

 curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 
 $this->doExecute($ch); 

編集: ファイルが大きすぎる問題ではないようです。600 バイトの jpg をアップロードできません

ありがとう

4

1 に答える 1

0

とった !フォルダのアクセス許可の問題でした。いくつかの不明な理由により、ファイルのアップロードは、サービスの実装前に問題なく機能していました........

そこで、デフォルトのアップロード フォルダーである C:\Windows\Temp を編集し、 iis_iusrs にフル コントロールのアクセス許可を追加しました。

ありがとう

于 2012-04-18T12:43:24.950 に答える