В настоящее время я использую Guzzle для извлечения данных из ресурса, и это внутри приложения Laravel.Функция для извлечения API находится в функции контроллера.Всякий раз, когда я загружаю страницу (в данном случае страницу lead_tracker, объявленную в контроллере ниже), запрашивающую API с помощью Guzzle, сервер просто отключается и ничего мне не дает.Почему это так?
Вот соответствующие файлы: контроллер (web.php)
<?php
Route::get('/facebook_for_business', 'PageController@facebook_for_business_page')->middleware('usersession');
Route::get('/search_dominance', 'PageController@search_dominance_page')->middleware('usersession');
Route::get('/phone_management', 'PageController@phone_management_page')->middleware('usersession');
Route::get('/email_management', 'PageController@email_management_page')->middleware('usersession');
Route::get('/document_center', 'PageController@document_center_page')->middleware('usersession');
Route::get('/google_adwords', 'PageController@google_adwords_page')->middleware('usersession');
Route::get('/media_gallery', 'PageController@media_gallery_page')->middleware('usersession');
Route::get('/lead_tracker', 'PageController@lead_tracker_page')->middleware('usersession');
Route::get('/push_network', 'PageController@push_network_page')->middleware('usersession');
Route::get('/sub_account', 'PageController@sub_account_page')->middleware('usersession');
Route::get('/dashboard', 'PageController@dashboard_page')->middleware('usersession');
// Route::get('/dashboard', 'PageController@dashboard_page');
Route::get('/calendar', 'PageController@calendar_page')->middleware('usersession');
Route::get('/register', 'PageController@register_page');//->middleware('usersession');
// Route::get('/register', 'PageController@register_page');
Route::get('/reviews', 'PageController@review_page')->middleware('usersession');
Route::get('/notes', 'PageController@notes_page')->middleware('usersession');
Route::get('/events', 'PageController@events_page')->middleware('usersession');
Route::get('/privelege', 'PageController@privelege_page')->middleware('usersession');
Route::get('/login', 'PageController@login_page');
// Route::get('/login', 'PageController@login_page')->middleware('usersession');
Route::get('/', 'PageController@index');
Route::get('/logout', 'UsersController@logout');
Route::get('/get_all_leads', 'LeadTrackerController@get_all');
Route::get('/get_lead_details', 'LeadTrackerController@show');
Route::get('/get_admin_id', 'UsersController@get_admin_id');
Route::get('/get_sub_accounts/{id} ', 'UsersController@get_sub_accounts');
Route::post('/authenticate_user', 'UsersController@authenticate');
Route::post('/submit_register', 'UsersController@store');
Route::post('/submit_add_lead', 'LeadTrackerController@store');
Route::post('/submit_edit_lead', 'LeadTrackerController@update');
Route::post('/submit_delete_lead/{id}', 'LeadTrackerController@destroy');
Route::post('/submit_add_privelege', 'PrivelegesController@store');
соответствующий контроллер (PageController.php)
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\URL;
use Illuminate\Support\Facades\DB;
use Auth;
use File;
class PageController extends Controller {
private $data = array('title' => '', 'script' => '');
public function index() {
return redirect('/login');
}
public function dataTable($properties = array()){
/*
ID label
columns
API URL
column names
*/
$client = new \GuzzleHttp\Client();
$idLabel = !isset($properties['id']) ? "a".md5(microtime()) : htmlspecialchars($properties['id']);
$url = !isset($properties['url']) ? "" : htmlspecialchars($properties['url']);
$html = "";
$fetch = $client->request('GET', url($properties['url']), ['connect_timeout' => 3.14]);
//$html = '<script type="text/javascript">$(document).ready(function() { $("#'.$idLabel.'").DataTable( { ';
//$html .= "ajax: {url: '".$url."',dataSrc: 'data'},columns: [{ data: 'id' }]";
//$html .= '} ); });</script>';
$table = "<table id='".$idLabel."'>";
$table .= "<thead class='thead-dark'><tr><th>id</th></tr></thead>";
$table .= "</table>";
$htmls = [
'div' => $table,
'html' => $fetch->getBody()
];
return $htmls;
}
public function lead_tracker_page() {
$data = $this->data;
$data['title'] = 'ISR | Lead Tracker';
$data['dataTable'] = $this->dataTable(['url' => '/get_all_leads']);
$data['page_script'] = url('/') . '/js/pages/lead_tracker.js';
return view('pages.lead_tracker_page')->with($data);
}
Любойпомощь будет оценена.Спасибо