laravel - 是否可以在 Laravel 视图作曲家中获取会话变量并调用 API?
问题描述
在 AppServiceProvider.php 中,我试图从会话中获取数据,然后用它调用 API,然后在从响应中获取变量后传递一个变量。
还有,不知道对不对。我添加了“Request $request”来启动功能,就像在代码的其他部分一样。
我得到的错误是“Request.php 第 388 行中的 RuntimeException:会话存储未按请求设置。” 这是否意味着未设置会话变量?当我在登录期间会话输入“令牌”和“member_id”时,我原以为它们会在我登录到我的网站后可用。
是不是因为视图控制器级别更高,所以我在登录期间放置的会话不会在此处的引导功能中的引导代码使用它们之前出现?哦,或者请求并没有像我希望的那样真正作为引导函数的参数传入。否则我将如何做到这一点或从会话中获取变量?
无论如何,我采取的步骤是否正确?如果我在整个过程中做错了事情,例如不良做法,请指出,谢谢。
这是我的代码:
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use Illuminate\Http\Request;
class AppServiceProvider extends ServiceProvider
{
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot(Request $request)
{
$client = new \GuzzleHttp\Client();
$params = array(
'token' => $request->session()->get('token'),
'member_id' => $request->session()->get('member_id'),
'activity' => 'GET MEMBER INFO'
);
$response = $client->request('POST',
env('SPACE_4_CAR_API_DOMAIN') . 'select_api/GetMemberInfo.php',
['json' => $params]
);
$returnData = json_decode($response->getBody());
view()->composer('layout', function ($view) {
$view->with('is_admin', $returnData->is_administrator);
});
}
/**
* Register any application services.
*
* @return void
*/
public function register()
{
//
}
}
解决方案
推荐阅读
- php - Moodle 数据大小释放
- c# - 在同一天内获取相反的收集日期时间
- python - dockerinzing Django 应用程序时 Pillow 库出错
- laravel - 在 aws 和 laravel 中提高上传速度的最佳方法
- chatbot - 如何处理 gupshup bot http 调用中的 api 失败
- angular - 找不到模块'@angular/http'Angular 9
- apache-kafka - REST WSO2 卡夫卡
- javascript - 未找到 Webpack 依赖项
- android - Firebase 云消息传递:测试消息来了,但真正的已发布消息没有来
- java - 如何在 Redis 的 spring 数据存储库中监听 CRUD 事件?