علی بهشتی
4 ماه پیش توسط علی بهشتی مطرح شد
0 پاسخ

مشکل در ارسال ریکوئست به سرور در وردپرس

سلام رفقا ، بنده یه پلاگین نوشتم که از پلاگین یه ریکوئست به کرالر میره و...
من کرالر رو اوردم رو سرور ، بعد اینجوریه که وقتی با وردپرس لوکال بهش ریکوئست میدم همه چی اوکیه و کاراشو میکنه
اما وقتی با سایتی که انلاینه بهش ریکوئست میدم این ارور رو میده
Error: cURL error 3: No URL set (Code: http_request_failed)
فایروال سرور رو کلا غیرفعال کردم
این کد هم بخش ارسال ریکوئست به سرور هستش که ادرسش درسته

$url = "http://185.208.175.249:8000/upload";

    // Logging URL
    error_log('URL: ' . $url);
    echo 'URL: ' . $url . '<br>';

    $dataUrl = site_url() . "/wp-json/wp/v2/prc/all_info";
    echo 'Data URL: ' . $dataUrl . '<br>';

    // Fetch data from the WordPress REST API
    $response = wp_remote_get($dataUrl, array('timeout' => 120));

    if (is_wp_error($response)) {
        error_log('Error fetching data: ' . $response->get_error_message());
        echo 'Error: ' . $response->get_error_message();
        return;
    }

    $data = wp_remote_retrieve_body($response);
    error_log('Fetched data: ' . $data);
    echo 'Fetched data: ' . $data . '<br>';

    $data_array = json_decode($data, true);

    if ($data_array === null && json_last_error() !== JSON_ERROR_NONE) {
        error_log('JSON decode error: ' . json_last_error_msg());
        echo 'Error: JSON decode error - ' . json_last_error_msg();
        return;
    }

    if ($data_array) {
        $data_array['strategy'] = [['strategy' => $strategy]];
        $data = json_encode($data_array, JSON_UNESCAPED_UNICODE);
        error_log('Data being sent: ' . $data);
        echo 'Data being sent: ' . $data . '<br>';
    } else {
        error_log('Invalid data format');
        echo 'Error: Invalid data format';
        return;
    }

    error_log('Data: ' . $data);

    if (empty($url)) {
        error_log('URL is empty');
        echo 'Error: URL is empty';
        return;
    }

    // Send data to the external URL using POST method
    $response = wp_remote_post($url, array(
        'method'      => 'POST',
        'timeout'     => 300,
        'body'        => $data,
        'headers'     => array(
            'Content-Type' => 'application/json'
        )
    ));

    if (is_wp_error($response)) {
        $error_message = $response->get_error_message();
        $error_code = $response->get_error_code();
        error_log('Error sending data: ' . $error_message . ' (Code: ' . $error_code . ')');
        echo 'Error: ' . $error_message . ' (Code: ' . $error_code . ')';
    } else {
        $body = wp_remote_retrieve_body($response);
        error_log('Response from server: ' . $body);
        echo 'Response from server: ' . $body;
    }
}
?>

ثبت پرسش جدید

به همدیگه کمک کنیم

به علی بهشتی کمک کنید تا مشکل خودش را حل کند؛ این‌طور می‌توانیم با هم پیشرفت کنیم.

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام