1

パイプメソッドを使用して、フロント エンドで psssed されたファイルを保存します。ローカルに保存されたファイルをクラウド サービスにアップロードするとき、ファイルのストリームが終了したかどうかわからないので、パイプが終了してからアップロードするのを待つ方法そのファイルをクラウド サービスに送信し、最後に応答を返す

また、クラウドサービスにファイルをアップロードする手順を次のように記述しようとしましたが、機能しません

res.on('終了',関数(){

...
})

        var koa-router = require("koa-router");
        var thunkify =require("thunkify");
        var parse = require("co-busboy");

        var parts = parse(this);  // "this" => request 

        while (part = yield parts){

            var imgPath = path.join(__dirname, "../../runtime/img_tmp", new Date().getTime() + "_" + part.filename.toString());
            stream = fs.createWriteStream(imgPath);
            res= part.pipe(stream);
        }
        //check and console.log the file is exist or not
        // upload to cloud service
        console.log(fs.existsSync(imgPath) || path.existsSync(imgPath));

        if(fs.existsSync(imgPath) || path.existsSync(imgPath)){

            var keyName = 'news/image/banner' + imgPath;

            var fileUpload_thunk = thunkify(awsUpload.fileUpload);
            yield fileUpload_thunk(fs.createReadStream(imgPath), keyName);

            console.log(photoUrl);
            //put url to photoUrl 
            photoUrl = 'http://goappdl.goforandroid.com/' + keyName;
            console.log("data-amazionFinished:"+new Date().getTime());
        }
        this.body={"state":1,"url":photoUrl}
4

0 に答える 0