Dans mon plugin, je souhaite appeler 10 requêtes HTTP ou plus de manière asynchrone dans WordPress, de sorte que je n'ai pas besoin d'attendre la réponse de quiconque. Existe-t-il un moyen dans Wordpress qui le supporte et qui soit compatible avec différentes versions de WordPress?
La classe Requests
(intégrée) vous permet d'appeler plusieurs demandes simultanément: 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;
}