Node.jsプロジェクトでは、コンピュータからサーバーにファイルを転送する必要があります。ファイルサイズが小さい、つまり2MBだが、このサイズを超えるファイルを送信できない場合はファイルを送信できます。次のようにここに私のコードは次のとおりです。次のようにNode.jsのリクエストモジュールを使用して大きなサイズのファイルを転送できません
私はデータコードを送信していますPHP側ではvar url1 = 'http://beta.xxxxx.com/Xbox/xxxx/index.php/info/xxxxx';
var csvenriched = APPDATApath+'/xxxx/users/'+userId+'/programs/'+programName+'/'+foldername+'/Data_'+tmpstmp+'.csv';
var req = request.post(url1, function (err, resp, body1) {
if (err) {
console.log('REQUEST RESULTS:'+err+resp.statusCode+body1);
res.send(err); return false;
} else {
res.send(body1); return false;
}
});
var form = req.form();
form.append('file', fs.createReadStream(csvenriched));
は次のとおりです。
public function actionSavetestvideo() {
if (!empty($_FILES)) {
$path = Yii::$app->basePath.'/testfiles/'.$_FILES['file']['name'];
if (move_uploaded_file($_FILES['file']['tmp_name'], $path)) {
return 'uploaded';
} else {
return 'error'.$_FILES["file"]["error"];
}
} else {
return $_FILES;
}
}
私はファイルをアップロードする必要がある場合、私は場合は、インターネット上の答えがあります知っていますしかし、私の場合は、Node.jsのrequest
モジュールを使ってファイルをPHPサーバーに転送する必要があります。
ファイルサイズが小さい場合はうまく動作しますが、CSVファイルサイズが大きい場合はうまく動作しません。
ファイルサイズが大きいと、PHP側のif (!empty($_FILES)){}
が失敗したことに私が気づいたことがあります。だから私はPHP側に問題があるとは思わない。私はそこで何を修正すべきかを提案してください。
他のポスターが答えをくれましたが、あなたは同じことを再転記して自分自身に刻み目を与えました。あなたはそれを他のポスターに受け入れてもらえると思いますか? – halfer
@halfer実際には、他の投稿の編集履歴が表示される場合は再起動後にのみ機能しますが、mscdexは編集を拒否しました。だから私は新しい答えを投稿しました。私は彼の答えをupvotedしています。 ..ウェル..私のプロフィールを訪問してくれてありがとう:) – Deep
ああ、私はその小さな違いを発見した。とにかく目立たないようにスタックオーバーフローの精神に従いますが、他のポスターがあなたの編集を拒否したらOKです。私の意見では編集を拒否してはいけませんでした。 – halfer