Ошибка cURL (28) Тайм-аут операции после 30001 миллисекунды с получением 0 байтов - PullRequest
0 голосов
/ 15 апреля 2020

Я использую Ubuntu 18.04, и я использую торт php 4, и я читал https://book.cakephp.org/4/en/core-libraries/httpclient.html#namespace -Cake \ Http \ Client и следовал процедурам, но все еще получаю ошибку. Я хочу получить свои данные в моем созданном API. Это в моем контроллере. Контроллер

public function employees() {
$http = new Client();
$response = $http->get('http://localhost:8765/api/employees');
$body = json_decode($response->body, true);

}

Пока это данные, которые я хочу получить

{
"data": {
    "status": "success",
    "employees": [
        {
            "id": 1,
            "cs_id": null,
            "first_name": "Kim Matthew",
            "last_name": "David",
            "middle_name": "Test",
            "gender": "Male",
            "birth_date": "2020-01-01",
            "birth_place": "Angeles City",
            "contact_primary": "0909090909",
            "contact_secondary": null,
            "address_permanent_street": "Test",
            "address_permanent_city": "Angeles City",
            "address_permanent_barangay": "Nepo",
            "address_permanent_province": "Pampanga",
            "address_permanent_region": "3",
            "address_permanent_zipcode": "2009",
            "address_current_street": "Test",
            "address_current_city": "Angeles City",
            "address_current_barangay": "Nepo",
            "address_current_province": "Pampanga",
            "address_current_region": "Test",
            "address_current_zipcode": "2009",
            "personal_email": "jaydavid1996@gmail.com",
            "nationality": "Filipino",
            "religion": "Catholic",
            "marital_status": "Single",
            "created": "2020-04-16T00:10:58+00:00",
            "modified": "2020-04-16T00:10:58+00:00"
        }
    ]
}

}

data

В моем app_local. php. Вот как я подключаюсь к своему mysql серверу.

'Datasources' => [
    'default' => [
        'host' => 'localhost',
        'username' => 'root',
        'password' => 'password',
        'database' => 'sc-reloaded',
        'url' => env('DATABASE_URL', null),
    ],

дБ

Когда я использую Ajax для получения данных. Это работает, но я хочу получить его через клиента Http. Это мой ajax вызов ajax вызов , если это поможет, но мне нужна помощь с использованием клиента Http для получения данных

Это версия моих php и mysql php mysql версии

Я действительно хотел получить данные через httpclient. Я хочу контролировать данные в php, а не в ajax JS. Пожалуйста, помогите.

1 Ответ

0 голосов
/ 16 апреля 2020

Попробуйте:

    $options = [
        'timeout' => 60, // <--- set your timeout here
    ];

    $http = new Client();
    $response = $http->get('http://localhost:8765/api/employees', null, $options);

Чтение: https://book.cakephp.org/4/en/core-libraries/httpclient.html#request -метод-опции

timeout - Продолжительность ожидания до истечения времени ожидания в секундах.

...