私は、MySQLデータベースとPHP APIを使用するモバイルアプリケーションを作成しています。 MySQLデータベースが更新されると、クライアントのUIを更新する必要があります。私は、これには定期的なAJAXリクエストを使用する方法があると言われています。いくつかの調査をした後、AJAXリクエストはjqueryに関連しているようです。 PHPコードのみを使用して定期的なAJAXリクエストを作成できますか?定期的なAJAX呼び出しをPHPのみで呼び出すことができます
答えて
実際、AJAXは、単に非同期HTTPリクエストであるXMLHttpRequestです。
JQueryは、jquery.ajax関数を使用して、ほとんどのコーディングを処理できます。
phpを使用してajax呼び出し(または単純なHTTP要求)を行いたい場合は、PHP Cron jobsをチェックする必要があります。
cronジョブでajaxを使用する代わりに、PHP Curlを使用して、サーバー側で作業しているときにHTTP要求を実行できます。 Ajax呼び出しはクライアント側からのみ実行されます。
これらの部分を入れ替えると、あなたはどこにいても終わります。
AJAXは、非同期JavaScriptとXMLの略です。 XMLデータの送信に限定されるわけではありませんが、JavaScriptを使用して行われるものです。
ブラウザがページを読み込むと、URLにリクエストが送信され、そのページのコンテンツがダウンロードされ、埋め込まれたコンテンツ(画像、JS、CSSコンテンツなど)がページに追加されます。すべてのコンテンツが制限されると、ドキュメントは終了し、ブラウザのステップによってコンテンツがロードされます。
AJAXは、ページのロードが完了した後でサーバーを呼び出すためのメカニズムです。受信したデータを使用して、サーバーにデータを送信し、サーバーからデータを要求し、ページの内容を(リロードせずに)操作することができます。
具体的な質問については、setInterval()
関数をループして定期的にサーバーサイドスクリプト(PHPでもよい)を呼び出し、更新されたデータを返す関数をループしたいとします。受け取った更新されたコンテンツに基づいてページを変更するためにクライアント側でJavaScriptを使用します。
時間間隔に基づいて要求を送信するのではなく、データベースが更新されたときに要求を送信する方法はありますか? –
AJAXではありません。 AJAXはクライアントから開始されるため、クライアントがクライアントにデータを要求したときにのみ、クライアントにデータを送信することができます。 AJAXの代わりに、あなたが望むものはWebSocketsです。こうすることで、アプリが読み込まれたときにサーバーとの永続的な接続が維持され、クライアントは定期的にクライアントに問い合わせる必要がなく、クライアントの更新を突き放すことができます。 –
WebSocketを迅速かつiOSでどのように使用するか考えていますか?あなたがどのように知っていれば、正しい方向に私を向けることができますか? –
あなたの質問やコメントからわかるように、Swiftで書かれたモバイルクライアントを持っています(私はそれがiOSアプリケーションだと仮定していますか?)、そしてPHPで動作するサーバーです。前述のように、いいえ、PHPコードからクライアントを更新することはできません。クライアントとサーバーの間で何らかの通信が必要です。主に3つの選択肢があります:
- ポーリングを使用します。これには、クライアントからのHTTP要求を時々(例えば、1分ごとに、または2分ごとに)要求することが含まれます。このようにして、クライアントアプリケーションは何か変更があった場合、サーバーに常に尋ねられます。変更があれば、UIを更新します。欠点は、データベースが変更されたときに、次のHTTPコールまでUIが更新されないため、5分ごとに呼び出しを行うと、クライアントは最大5分間待機する必要があることです更新しました。また、通話時間を短くすると、トラフィック(多くの場合、データ料金を発生させる可能性のあるモバイルクライアントでは望ましくない)が多く発生し、無駄なリクエストでサーバーが過負荷になる可能性があります。
- 長いポーリングを使用します。これはポーリングを行う「スマートな」方法です。変更が行われるとすぐにインターフェイスを更新すると同時に、サーバーへの呼び出しを減らすことができます。スタックオーバーフローに関する長いポーリングに関する多くの質問があります。
- プッシュ通知を使用します。これにより、アプリケーションが実行されていなくても、ユーザーの電話に直接通知を送信できます。しかし、彼らは多くのセキュリティと設定が必要です。 iOS hereのプッシュ通知に関するチュートリアルがあります。
そしてAJAXはないスウィフトで書かれたモバイルアプリケーションで、WebページにJavaScriptから作られたサーバ要求を参照するので、いや、この場合には用語「AJAX」は、適用されません。)
- 1. 定期的にAjaxを呼び出す
- 2. jQueryで別のAJAX呼び出しの中でAJAX呼び出しを行うことはできますか?
- 3. Ajaxが非同期呼び出しで状況を呼び出す
- 4. jQuery ajaxで関数asmxの呼び出しを呼び出す
- 5. AJAX経由でPHPを呼び出す
- 6. AJAX POSTリクエストを呼び出すことができません
- 7. JavaScriptメソッド呼び出しは、ScriptManagerを使用して1回のみ呼び出すことができます
- 8. 「Meteor.userIdはメソッド呼び出しでのみ呼び出すことができます」メテオメソッドテスト
- 9. ajaxがphpファイルを呼び出す
- 10. php Symfony 3 ajaxが非同期で呼び出す
- 11. AJAX呼び出しが呼び出されない
- 12. Internet Explorer 11 - AJAX呼び出しが呼び出されない
- 13. ドロップダウンボタンでajaxを呼び出します
- 14. 具体的なクラスのメソッド呼び出しを呼び出す
- 15. 非同期API呼び出しを再帰的に呼び出します。
- 16. Ajax呼び出しでコントローラが呼び出されない呼び出し方法
- 17. Ajax呼び出し
- 18. Ajax呼び出し
- 19. Ajax呼び出し
- 20. Ajax呼び出し
- 21. AJAX呼び出し
- 22. 一方向のajax呼び出しを呼び出す
- 23. すべてのAJAX呼び出しは(AJAX呼び出しの数が動的である)
- 24. リダイレクトはstdinが呼び出しを呼び出すのを期待します
- 25. ajax呼び出しでiframeのsrc属性を設定するときにwindow.onloadを呼び出す
- 26. 非同期Ajax呼び出しのテスト
- 27. asyncus ajaxを呼び出してjavascript関数を呼び出す
- 28. AJAX呼び出しが
- 29. 私はサイトコアでのAJAX呼び出し中に部分的なビューを返したいAJAX呼び出し
- 30. PHPのajax呼び出しのscandir
あなたが作ることができます必要な任意のプラットフォームからのHTTP要求 – SLaks
AJAXリクエストとHTTPリクエストは異なりますか? –
あなたはクライアントとサーバーの違いを知っていますか? –