短いアドレス生成アプリケーションでは、Web ページのスナップショットは長いアドレスに基づいて生成される必要があります。この生成時間は瞬時ではなく、予測できません。
したがって、フロントエンドで採用される解決策は、一般に、最初に生成された短いアドレスを表示し、次に Web ページのスナップショットが生成されたかどうかを定期的に AJAX チェックすることです。
したがって、PHP コードは次のように処理されます:
コードをコピーします コードは次のとおりです:
// ここのサーバーは phantomjs を使用して Web ページのスナップショットを生成します
$cd = '/home/emp/phpinstall/phantomjs-1.5.0/bin/phantomjs /home/emp/phpinstall/phantomjs/snap.js "'.$url.'" /home/emp/public_html_demo/cms/' .$親指。' & ';
試してみてください{
@pclose(popen($cd,"r"));
}catch(例外 $e){}
フロントエンド Js 用の Ajax スクリプト:
コードをコピーします コードは次のとおりです:
_wt = window.setInterval("sys.ajax('?m=shorturl&c=index&a=check_snap','',callback.checkSnap);",200);
コールバック関数 checkSnap は、PHP の check_snap が Web ページのスナップショット ファイルが生成されたかどうかを検出するのを待ちます。
生成された情報を受信したら、_wtタイマーをクリアします。
コードをコピーします コードは次のとおりです:
クリアタイムアウト(_wt);
このように、JFYF の PHP とフロントエンド AJAX のペアは楽しく連携しています~