web-dev-qa-db-ja.com

Wordpressで複数の非同期HTTPリクエストを実行する方法

私のプラグインでは、私は誰かの応答を待つ必要がないようにWordPressで非同期に10以上のHTTPリクエストを呼び出したいです。これをサポートし、また異なるWordPressのバージョンと互換性のあるWordpressの中で何か方法はありますか?

1
beginner

(組み込み)Requestsクラスを使用すると、複数の要求を同時に呼び出すことができます: Requests::request_multiple

<?php

$requests = Requests::request_multiple([
    [
        'url' => 'https://www.mocky.io/v2/5acb821f2f00005300411631',
        'type' => 'GET',
        'headers' => [
            'Accept' => 'application/json'
        ],

    ],
    [
        'url' => 'https://www.mocky.io/v2/5acb821f2f00005300411631',
        'type' => 'POST',
        'headers' => [
            'Accept' => 'application/json'
        ],
        'data' => json_encode([
            'text' => 'My POST Data'
        ])
    ],
    [
        'url' => 'https://www.mocky.io/v2/5acb82ee2f00005100411635',
        'type' => 'POST',
        'headers' => [
            'Accept' => 'application/json'
        ],
        'data' => json_encode([
            'text' => 'More POST Data'
        ])
    ],  
]);

foreach ($request as $request) {
    if ($request->status_code !== 200) {
        // handle error
    }
    // handle success
    echo $request->body;
}
1
alpipego