backbone と rest api (codeignitier) を使用してファイルをアップロードする方法。以下は私のHTMLフォームデータです:-
<form class="form-horizontal" id="upgrade_firmware" method="get" enctype="multipart/form-data">
<div class="control-group">
<label class="control-label muted">IMG</label>
<div class="controls">
<input type="file" id="fu-img" value="" name="fu-img" >
</div>
</div>
<div class="control-group">
<label class="control-label muted">MD5</label>
<div class="controls">
<input type="file" id="fu-md5" value="" name="fu-md5">
</div>
</div>
</form>
これをビューファイルにアップロードするにはどうすればよいですか。作成または削除するフォームの場合、バックボーンで model.save を使用して、それを REST API に渡すことができます。
- アップロード ボタンをクリックすると、/home/upload ディレクトリにアップロードできます。これは get 呼び出しである必要があります。なぜなら、ファイルが既に存在するかどうかを確認する必要があるためです..get を呼び出すと、{" としてバックエンド応答を取得しますfile":true} 、それはファイルが既に存在することを意味するので、終了します。
- 通話が成功した場合、進行状況ページにリダイレクトします{"progress": 40%}
このようなアップロードは可能ですか?get 呼び出しを使用してファイルをアップロードし、バックエンドから適切な応答を受け取りますか? バックボーンと残りの API を使用します。
<?php defined('BASEPATH') OR exit('No direct script access allowed');
require(APPPATH.'/libraries/REST_Controller.php');
class FRM_Upload extends REST_Controller
{
function api_get()
{
//upload to /home/upload dir
$message = json_decode(file_get_contents("assets/json/firmware_progress.json"));
$this->response($message, 200);
}
}