laravel - 外部 API 身份验证应该是 Laravel 中的 ServiceProvider 还是 Controller?
问题描述
我正在使用 Laravel 构建一个应用程序,该应用程序将允许客户通过 API 从/向 Mautic(电子邮件营销软件)发送和获取联系人,但首先该应用程序需要获得使用 Mautic API 的自动化并将用户凭据存储到数据库以备将来使用。
这是我如何进行自动化以连接到该 api 的示例
$settings = [
'userName' => '', // Create a new user
'password' => '', // Make it a secure password
];
// Initiate the auth object specifying to use BasicAuth
$initAuth = new ApiAuth();
$auth = $initAuth->newAuth($settings, 'BasicAuth');
然后我可以使用这个通过 id 获取联系人
$api = new MauticApi(); //This class is from the API package
$contactApi = $api->newApi('contacts', $auth, $apiUrl);
$response = $contactApi->get($id);
所以我的问题是我如何组织该逻辑,我应该将所有逻辑都放在控制器中还是最好创建一个服务提供者来负责自动化,然后返回 $auth 句柄,我可以稍后为每个句柄使用客户,如果使用 serviceprovider approch 更好,那么我想知道我该怎么做,我应该把自动化逻辑放在引导方法中吗?
解决方案
推荐阅读
- r - 按包含“NA”的多行排序
- python - 如何实现 pythonic 行续读
- gradle - 初始化脚本从何而来?
- c - 交换数字的备用数字
- firefox - SVG 文本路径渲染在 Firefox 中出现反转
- c# - 如何在不等待内部方法完成的情况下立即返回“ok”
- java - RecyclerView 搜索过滤器在过滤结果后位置错误
- vscode-remote - 如何在 Windows 中通过 git bash 连接 vscode-remote-ssh 扩展?
- python - 在linux上安装pandas,只用一个python文件
- python - 如何使用文件名(如果提供)或标准输入(如果未提供 argparse)