标签:
HTML blade部分
<meta name="_token" content="{{ csrf_token() }}"/>
前端js请求部分(注意那个header属性,是为了避免跨站伪造请求攻击写的)
$.ajax({ type: ‘POST‘, url: ‘/ajax/create‘, data: { date : ‘2015-03-12‘}, dataType: ‘json‘, headers: { ‘X-CSRF-TOKEN‘: $(‘meta[name="_token"]‘).attr(‘content‘) }, success: function(data){ console.log(data.status); }, error: function(xhr, type){ alert(‘Ajax error!‘) } });
路由部分route.php(ajax/create路由打到Controllers/Ajax/PollController.php的store方法上处理)
Route::group([‘prefix‘ => ‘ajax‘, ‘namespace‘ => ‘Ajax‘], function(){ Route::post(‘create‘, ‘PollController@store‘); });
控制器方法PollController.php,
<?php namespace App\Http\Controllers\Ajax; use App\Http\Requests; use App\Http\Controllers\Controller; use Illuminate\Http\Request; use Illuminate\Http\Response; use App\Poll; // 用数据模型 use Redirect, Input, Auth, Log; class PollController extends Controller { public function store(Request $request) { $poll = new Poll; $poll->date = Input::get(‘date‘); if ($poll->save()) { return response()->json(array( ‘status‘ => 1 ‘msg‘ => ‘ok‘, )); } else { return Redirect::back()->withInput()->withErrors(‘保存失败!‘); } } }
标签:
原文地址:http://my.oschina.net/u/2444569/blog/513668