Laravel Ajax Return 404 - PullRequest
       4

Laravel Ajax Return 404

0 голосов
/ 09 октября 2018

Я пытаюсь отправить данные на сервер и получаю ошибку 404 с этим объяснением на вкладке сети:

"message": "",
"exception": "Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException",

Маршрут

Route::middleware('verified')->group(function () {

   Route::post('/snaptoken/{id}', 'Admin\PayController@token')->name('securepaymentnow');
});

Контроллер

public function token(Request $request, $id) 
    {
        //Find project
        $project = Project::findOrFail($id);

        //rest of data
    }

Клинок

//form and button
  <form id="payment-form" method="POST" action="{{route('securepaymentnow', $project->id)}}">
    @csrf
    <input type="hidden" name="result_type" id="result-type" value="">
    <input type="hidden" name="result_data" id="result-data" value="">
  </form>
  <button class="btn-sm bg-success pay-button" data-id="{{$project->id}}" type="submit"><i class="fas fa-fas fa-shield-alt"></i> Secure Payment</button>

//javascript

$('.pay-button').click(function (event) {
        $.ajaxSetup({
            headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') }
        });
        event.preventDefault();
        // $(this).attr("disabled", "disabled");
        var prdfoId = $(this).data('id');
          $.ajax({
            url: '{{url("/securepaymentnow")}}/'+encodeURI(prdfoId),
            type: "POST",
            cache: false,

            success: function(data) {
              var resultType = document.getElementById('result-type');
              var resultData = document.getElementById('result-data');
            }
          });
});

Есть идеи?

.........................................................................................................................

1 Ответ

0 голосов
/ 09 октября 2018

если вы используете функцию url(), вы должны использовать {{ url('/snaptoken') }}.

Но если вы хотите использовать «имя» из «securepaymentnow», используйте функцию route() с этим примером {{ route('securepaymentnow', $theId) }}.

Оба должны работать.

Для получения подробной информации см. Laravel NamedRoute .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...