私はウェブアプリケーションのアップロードページを作成しようとしています。サーバーにファイルを送るために、私はAJAXを使いたいと思っています。フロントエンド全体にAJAX GETを使っています。Laravel 5.2 - 方法[ajax]が存在しません
私の問題は、POSTを使用しようとすると、私はあなたに一瞬であなたを提供するだろうという状況の中で、「方法[ajax]が存在しません」というエラーメッセージが表示されるということです。
マイルート(POST 1):
Route::group(['prefix' => 'organisatie', 'middleware' => ['web', 'auth', 'ajax'], 'namespace' => 'Organisatie'], function()
{
Route::group(['prefix' => '{organisatie}/documenten'], function()
{
Route::get('/', '[email protected]')->name('drive.index');
Route::post('/upload', '[email protected]')->name('drive.upload');
});
});
ルートがorganisatie/{organisatie_id}/documenten/upload
に降りてくるでしょう。マイ[email protected]
:
public function upload(Request $request)
{
$file = $request->file('file[]');
return response()->json($file);
}
私のAJAXコード:
var formData = new FormData();
utility.foreach(upload.fileArray.array, function (file) {
formData.append('file[]', file);
});
var ajax = {
url: '/organisatie/1/documenten/upload',
type: 'POST',
data: formData,
dataType: 'JSON',
processData: false,
success: function (data) {
console.log(data);
}
};
$.ajax(ajax);
注:
utility.foreach
は自分のforeachの実装であり、そしてそれだけで ことを行います。upload.fileArray
は、私が定義した配列ラッパーであり、期待通り として機能します。upload.fileArray
を入力すると正常に動作し、テストされます。それはinput[type=file] (multiple)
のFileList
から設定されています。
何かすべての助けがありがたいです。何か不明な点がある場合は質問してください。
ajaxミドルウェアは正しく設定されていますか? – Neat
おそらくjQuery(correcly)が含まれていない可能性があるため、問題は '$ .ajax(ajax);にあります。 http://api.jquery.com/jquery.ajax/ –
ページが読み込まれた後でページソースを検索し、jQueryライブラリを検索してここに貼り付けてください。たとえば、私は '' – Onix