我正在 Laravel 10 中做一个简单的项目
在数据库中,我有一张表tokens,在列中,有一组特殊的令牌
我想全部获取它们并在 URL get 中调用它们,我这样做但它不会重复与剩余的tokens 的连接它只是以 JSON 形式获取它们
在TokensController.php
我有不止一个代币
我从数据库中获取代币:
$codes = UsersTokens::select('tokens')->get();
代币 = "6374784926";
代币 = "8274748264";
代币 = "8489155538";
代币 = "15536485926";
我这样叫
foreach ($codes as $code){
$activeOrders = Http::asJson()->withToken($code->tokens)->get('https://api.example.com/v2/api');
return $activeOrders;
}
但它不起作用,令牌形成 DB UsersTokens,因为它看起来像 JSON!
我想获取带有多个令牌的链接,它会获取所有联系信息
第一个问题调用时参数错误($codes应该是$code):
foreach ($codes as $code){
$activeOrders = Http::asJson()->withToken($code->tokens)->get('https://api.example.com/v2/api');
return $activeOrders;
}
关于第二个问题 updateOrCreate 方法适用于两个数组,第一个数组中的参数应该是唯一的(系统决定是否应该根据这些参数创建新条目或更新现有条目)。例子:
$conditional_entry = SomeModel::updateOrCreate(['param1' => $value1, 'param2' => $value2], ['param3' => $value3, 'param4' => $value4]);
Thisl 将以这种方式表现:
$conditional_entry = SomeModel::where('param1', $value1)->where('param2', $value2)->first();
if(isset($conditional_entry)){
$conditional_entry->update(['param3' => $value3, 'param4' => $value4]);
}
else{
$conditional_entry = SomeModel::create(['param1' => $value1, 'param2' => $value2, 'param3' => $value3, 'param4' => $value4]);
}
所以你的方法应该是这样的:
UsersTokens::updateOrCreate(
[
'avatar'=>$admin_info['data']['avatar'],
'name'=>$admin_info['data']['name'],
'domain'=>$admin_info['data']['domain'],
'plan'=>$admin_info['data']['plan'],
'admin'=>$admin_info['data']['name'],
'mobile'=>$admin_info['data']['mobile'],
'email'=>$admin_info['data']['email']
],
[
'token'=>$admin_info['code']
]
);