そこで、JS によって投稿されたデータのエクスポートを処理する PHP コントローラーを作成しました。問題は、コンソールに何かが作成されるのを見ることができますが、ファイルのダウンロードが開始されないことです。->store (laravel Excel) を使用してエクスポート フォルダーに保存しようとしましたが、使用しようとすると再び
return \Response::download($result);
それでもダウンロードは開始されません。私が抱えている問題は、ダウンロードを開始することです。
角度コントローラー
$scope.exportMatrix = function () {
var postData = {list: $scope.list, matrix: $scope.matrix};
$http({
method: 'POST',
url: '/export',
dataType: 'obj',
data: postData,
headers: {'Content-Type': 'application/x-www-form-urlencoded'}
}).success(function (data) {
console.log(data);
}).error(function (data) {
console.log("failed");
});
}
ルート
Route::post('/export', 'ExportController@export');
PHP コントローラー
<?php namespace App\Http\Controllers;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App;
use Excel;
use Response;
class ExportController extends Controller {
public function export()
{
$excel = App::make('excel');
Excel::create('Test', function($excel) {
$excel->setTitle('new awesome title');
$excel->sheet('Sheet', function($sheet) {
$sheet->fromArray(array(
array('data1', 'data2'),
array('data3', 'data4')
));
});
})->export('xlsx');
}