Open Network Tab with when you dealing with AJAX Requests, 500 means Server error and Method No Allow Exception is - let's say you have a GET route, when you send a POST request to it, you get this exception, and not only POST, PUT and DELETE and any other HTTP request - but not GET. And this exception causes that 500 error :)
console log all the data you send, then dd() data from the request, if everything is OK, move to next step, save, or delete, or whatever, good luck!
Don't forget about storage/logs/laravel.log