У меня есть файл модели, и я запрашиваю ссылку api в этом файле. Но я все время получаю нулевую ошибку
Я отправляю данные в метод apiRequest из контроллера.
Test. php модель ниже
static function apiRequest(string $url , array $data): array
{
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => http_build_query($data),
CURLOPT_HTTPHEADER => array(
"Accept: */*",
"Cache-Control: no-cache",
"Content-Type: application/x-www-form-urlencoded"
),
));
$response = curl_exec($curl);
$response = json_decode($response , true);
$err = curl_error($curl);
curl_close($curl);
dd($response);
/* if ($err) {
return ["error" => true];
} else {
return $response;
} */
}
Файл контроллера, который я отправил, выглядит следующим образом:
public function workplaces(){
try {
$workplaces = Workplace::all();
foreach ($workplaces as $workplace){
$api_arr=[
'username' => $workplace->username,
'password' => $workplace->password
];
$api_response= Test::apiRequest('http://api.testlocal.com/api/login',$api_arr);
Workplace::where('id',$workplace['id'])->update([
'api_token' => $api_response['reel_token']
]);
}
$workplaceses = Workplace::all();
return response()->json([
'status' => 200,
'workplaces' => $workplaceses,
'success' => true
]);
} catch (\Exception $e) {
return response()->json([
'status' => 200,
'error' => true
]);
}
}
Мне нужно отправить данные $ api_response, но они получают значение null. Где я мог ошибиться