Laravel 7 зачем показывать код состояния 302 с почтовыми данными

Я использую laravel 7 для публикации своих данных с помощью bookcontroller@insertbook. И я нашел показать код состояния с 302. Но я проверил свой web.php и контроллер, они не выходят из строя. код состояния показывает

Ниже показан мой код веб.php

Route::redirect('/' , 'cn');

Route::get('dashboard', function () {
    return redirect()->route('home' , ['language' => app()->getLocale() ?? 'cn']);
});


Route::group([
    'prefix' => '{language}' ,
    'where' => ['language' => '[a-z]{2}']
], function(){

    
    Route::get('/', function () {
        return view('auth.login');
    })->name('login');

    Auth::routes();

    Route::group(['middleware' => ['auth']], function(){

        Route::get('allbook', [
            'uses' =>'BookController@listBook',
            'as' => 'book_index'
        ]);

        Route::get('dashboard', 'HomeController@index')->name('home');

        Route::get('addcategory', 'BookController@categoryPage')->name('addCategory');

        Route::post('addcategory','BookController@addnewCategory');

        Route::get('addbook', 'BookController@addBook')->name('addbook');

        Route::get('profile',function(){
            return view('book.profile');
        });

        Route::get('book/edit/{id}', [
            'uses' =>'BookController@edit',
            'as' => 'book_edit'
        ]);

Вот мой BookController@insertBook

        Route::post('addbook','BookController@insertBook');
        Route::post('book/update/{id}', [
            'uses' =>'BookController@update',
            'as' => 'book_update'
        ]);

        Route::post('book/delete/{id}', [              // this is the directory show in url
            'uses' => 'BookController@delete',          // this is get the BookController @delete method
            'as' => 'book_delete'                      // this is the value you can use "route('book_delete') to run it post"
        ]);

    });

});

Ниже мой книжный контроллер с функцией книга-вставка.

public function insertBook(Request $request)
    {

         $request->validate([
            'title-name' => 'required|min:3|max:100',
            'author-name' => 'required|regex:/^[\pL\s\-]+$/u',
            'description' => 'required|min:10|max:300',
            'category' => 'required',
            'status' => 'required',
        ]);


        $data = $request->input();

        $books = new Books;

        $books->title = $data['title-name'];
        $books->author = $data['author-name'];
        $books->description = $data['description'];
        $books->category = $data['category'];
        $books->status = $data['status'];
        $books->save();

        $request->session()->flash('message', 'You have successfully added a book!');

        return back();
    }
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Клиент для URL-адресов, cURL, позволяет взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
Что нового в PHP 8.1?
Что нового в PHP 8.1?
Если вы все еще используете PHP 7, то эта статья для вас. В PHP 8, а именно в PHP 8.1, встроены некоторые очень востребованные функции, которые вам...
Разработка LMS на заказ для повышения эффективности работы и обучения
Разработка LMS на заказ для повышения эффективности работы и обучения
За последние годы в образовании произошла большая революция, и сегодня почти все учебные заведения делают упор на эксклюзивное управление учебным...
1
0
30
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Как вы можете видеть в документации laravel https://laravel.com/docs/7.x/редиректы, метод back() является методом перенаправления http. Код ответа http 302 является поведением по умолчанию для этого вспомогательного метода, как вы можете видеть в каталоге вашего поставщика:

поставщик/laravel/framework/src/Illuminate/Foundation/helpers.php

или здесь в реализации:

if (! function_exists('back')) {
    /**
     * Create a new redirect response to the previous location.
     *
     * @param  int  $status
     * @param  array  $headers
     * @param  mixed  $fallback
     * @return \Illuminate\Http\RedirectResponse
     */
    function back($status = 302, $headers = [], $fallback = false)
    {
        return app('redirect')->back($status, $headers, $fallback);
    }
}

Если вы хотите узнать больше о кодах ответов http:

Вам может быть полезна эта ссылка:

https://umbraco.com/knowledge-base/http-status-codes/

The HyperText Transfer Protocol (HTTP) 302 Found redirect status response code indicates that the resource requested has been temporarily moved to the URL given by the Location header

Верно возвращать код состояния 302, потому что вы возвращаете метод back(), который перенаправляет на предыдущий пункт назначения.

Итак, не является ли большой проблемой продолжать использовать back(), верно?

Kywleon 09.04.2022 20:38

Другие вопросы по теме