Teruskan memproses php selepas menghantar respons http
P粉029327711
P粉029327711 2023-08-27 20:36:33
0
1
530

Skrip saya dipanggil oleh pelayan. Saya akan menerima ID_OF_MESSAGE dan TEXT_OF_MESSAGE

Dalam skrip saya, saya akan memproses teks masuk dan menjana respons menggunakan parameter: JAWAPAN_TO_ID dan RESPONSE_MESSAGE.

Masalahnya ialah saya menghantar respons kepada "ID_OF_MESSAGE" yang masuk, tetapi pelayan yang menghantar mesej kepada saya untuk pemprosesan menetapkan mesejnya untuk dihantar kepada saya (yang bermaksud Jadi saya boleh menghantar responsnya kepada ID itu) selepas menerima respons http 200.

Satu penyelesaian ialah menyimpan mesej ke pangkalan data dan mencipta beberapa cron yang berjalan setiap minit, tetapi saya memerlukan mesej respons dijana dengan segera.

Adakah terdapat beberapa penyelesaian bagaimana untuk menghantar ke pelayan http respon 200 dan terus melaksanakan skrip php?

Terima kasih banyak

P粉029327711
P粉029327711

membalas semua (1)
P粉351138462

Ya. Anda boleh melakukan ini:

ignore_user_abort(true);//not required set_time_limit(0); ob_start(); // do initial processing here echo $response; // send the response header('Connection: close'); header('Content-Length: '.ob_get_length()); ob_end_flush(); @ob_flush(); flush(); fastcgi_finish_request();//required for PHP-FPM (PHP > 5.3.3) // now the request is sent to the browser, but the script is still running // so, you can continue... die(); //a must especially if set_time_limit=0 is used and the task ends
    Muat turun terkini
    Lagi>
    kesan web
    Kod sumber laman web
    Bahan laman web
    Templat hujung hadapan
    Tentang kita Penafian Sitemap
    Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!