資料是jquery.post的表單資料
var data=$('.form').serializeArray();
$.post('url',{data:JSON.stringify(data)},function(res) {
console.log(res);
});
提交到伺服器端的格式是FormData:data: [{"name":"name","value":"測試流程"},{"name":"action","value":"save"}]
做了一個資料轉換的中介軟體AjaxFormDataTransformer,方便$request訪問資料:
class AjaxFormDataTransformer
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
*
* @return mixed
*/
public function handle($request, Closure $next)
{
$data = json_decode($request->input('data'));
foreach ($data as $v) {
$request->offsetSet($v->name, $v->value);
}
//如果想保留有原輸入,註釋掉此行
$request->offsetUnset('data');
return $next($request);
}
}
本作品採用《CC 協議》,轉載必須註明作者和本文連結