1

PhantomJs サーバーへの POST 要求を実行し、応答を受信した後にコールバック関数を呼び出す php スクリプトを作成する必要があります。

これが私のphantomjsサーバーだとしましょう:

var server, service;

server = require('webserver').create();

service = server.listen(8080, function (request, response) {

    //do_something_heavy_with_request_data_here

    response.statusCode = 200;
    response.write("{status: success, data: data}");
    response.close();
});

したがって、私のphpスクリプトからリクエストを行う必要がありhttp://localhost:8080、phantomjsが計算を終了してレスポンスを送信すると、コールバック関数を起動します。このトピックを見つけました: PHP で非同期 GET リクエストを作成するにはどうすればよいですか? . ここで役立つものはありますか? 私はこのcurlアプローチについて考えていましたが、私は完全なPHP初心者であるため、これらすべてを一緒に実行する方法がわかりません.PHPで非同期GETリクエストを作成するにはどうすればよいですか? .

4

1 に答える 1

0

使用できますcURLhttp://www.php.net/manual/en/book.curl.phpここにマニュアルがあります。複雑なことは何もありません。

<?php 

/** 
 * Send a POST requst using cURL 
 * @param string $url to request 
 * @param array $post values to send 
 * @param array $options for cURL 
 * @return string 
 */ 
function curl_post($url, array $post = NULL, array $options = array()) 
{ 
    $defaults = array( 
        CURLOPT_POST => 1, 
        CURLOPT_HEADER => 0, 
        CURLOPT_URL => $url, 
        CURLOPT_FRESH_CONNECT => 1, 
        CURLOPT_RETURNTRANSFER => 1, 
        CURLOPT_FORBID_REUSE => 1, 
        CURLOPT_TIMEOUT => 4, 
        CURLOPT_POSTFIELDS => http_build_query($post) 
    ); 

    $ch = curl_init(); 
    curl_setopt_array($ch, ($options + $defaults)); 
    if( ! $result = curl_exec($ch)) 
    { 
        trigger_error(curl_error($ch)); 
    } 
    curl_close($ch); 
    return $result; 
    } 
?>

これは、ニーズに合った例のコードです。

于 2012-05-17T13:37:28.460 に答える