Code前端首页关于Code前端联系我们

Laravel创建http header设置响应头、重定向等

terry 2年前 (2023-09-25) 阅读数 62 #后端开发
Laravel 创建 http 标头来设置响应标头、下载等。 Laravel 提供了多种返回结果的方式。最简单的是向路由或控制器返回一个字符串,laravel 的下层将自动生成完整的 http 响应。
Route::get('index', function () {
    return 'study laravel'
});

如果返回的是数组,laravel 会自动将其转换为 json 格式输出。另外,下面的代码也是一样的:

return ['name' => 'laravel', 'email' => 'laravel@'];
return response(['name' => 'laravel', 'email' => 'laravel@']);
return response()->json(['name' => 'laravel', 'email' => 'laravel@']);

添加响应头

添加响应头很简单,只需要使用 header 方法就可以了,可以使用多个 header 方法来设置多个 header。

return response('study laravel')
        ->header('Content-Type', 'text/html; charset=UTF-8')
        ->header('Php-Version', '');

您还可以与 Headers 一起使用来一次设置多个响应标头。该方法接受一个数组作为第一个参数。

return response('study laravel')
         ->withHeaders([
             'Conetnt-Type' => 'text/html; charset=UTF-8',
             'Php-Version' => ''
         ]);

重定向

在 Laravel 中,有很多方法可以实现重定向。可以通过 Route::redirect 或函数重定向发送。由于Route::redirect属于路由相关的知识,所以这里我们看一下redirect的功能。

return redirect('index/users');

通常,当表单提交后验证失败,我们会返回到之前的表单页面。这里我们需要用背面来完成。

return back();

您还可以移动到指定曲目。如果路径中有参数,则将其传递给第二个参数:

return redirect()->route('news', ['id' => 23]);

通常,在做了一些逻辑处理后,我们会切换到另一个控制器并继续前进。下一步。例如,当注册一些东西时,需要填写很多表格。

return redirect()->action('IndexController@index', ['id' => 1]);

有时需要引用应用程序外的域名,也可以使用远程来完成操作。它不附带编码

return redirect()->away('');

其他响应类型

视图响应很常见,可以使用视图来设置

return response()
    ->view('welcome', $data, 200)
    ->header("Content-Type", "text/html;charset=utf-8");

另外,laravel 提供了可下载的响应、响应文件等,因为它们不被使用日常工作中的内容较多,因此这里不再赘述。

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门