如何在WordPress中运行多个异步HTTP请求?

时间:2018-02-12 作者:beginner

在我的插件中,我想在WordPress中异步调用10个或更多HTTP请求,这样我就不需要等待任何人的响应。Wordpress中是否有任何方式支持此功能并与不同的Wordpress版本兼容?

1 个回复
SO网友:alpipego

(内置)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;
}

结束

相关推荐

如果用户已登录并在主页上重定向,则使用PHP

我是一个彻头彻尾的傻瓜,但我正在努力学习,我被难住了。我有一个登录页面作为我的静态主页,我想做一个if语句,这样如果用户登录并转到静态主页,他们就会被重定向到另一个包含内容的页面。到目前为止,这是我所拥有的,但它不起作用:if ( is_user_logged_in() && is_page( home_url ) ) { wp_redirect(\'http://example.com/\') ; } 你能不能不仅给我一个答案,而且给我一个小小的解释,让