この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 3630|答える: 1

[その他] ポストロボットによるブラウザウィンドウ通信の例

[リンクをコピー]
掲載地 2023/02/18 21:24:06 | | | |
要件:以前はPostMessageを使ったブラウザウィンドウ間の直接通信がテストされていましたが、現在はサードパーティライブラリであるPost-robotを使ってクロスドメインウィンドウ通信を行っています。

JSは現在のページがiframeかポップアップウィンドウかを判断します
https://www.itsvse.com/thread-10342-1-1.html

HTML5 PostMessage クロスウィンドウ通信
https://www.itsvse.com/thread-10343-1-1.html

ポストロボットは実際にはPostMessage通信方式のさらなるカプセル化であり、以下の機能(メッセージを別のウィンドウに送信する)を備えています。

  • メッセージを送った窓から返信が来る
  • 異なるドメイン間で関数を別のウィンドウに渡すこと
  • メッセージの伝達を妨げるエラーを処理してください
  • メッセージのシリアル化は気にしなくて大丈夫です。 JavaScriptオブジェクトだけを送信してください
  • promisesやasync/waitを使って、メッセージを送ったウィンドウの応答を待つことができます
  • ドメイン上の2つのウィンドウ間で安全なメッセージチャネルを確立します
  • 親ウィンドウとIEのポップアップウィンドウの間でメッセージを送信します


NPMアドレス:ハイパーリンクのログインが見えます。
GitHubのコードアドレス:ハイパーリンクのログインが見えます。

まずはレンダリングを見てみましょう。



親ウィンドウは子ウィンドウをポップアップし、その後子ウィンドウにメッセージを送信します。子ウィンドウから応答を得ることもできます。もちろん、子ウィンドウも親ウィンドウにメッセージを送ることで応答を得ることができます。HTTPに似た要求応答パターン

親ウィンドウコードは以下の通りです:

サブウィンドウコードは以下の通りです:

(終わり)





先の:Angular-cliはAngularプロジェクトの指定バージョンを作成します
次に:Gitの浅いクローンソースコードを使って大規模なプロジェクトをダウンロードしてください
掲載地 2023/02/19 20:50:34 |
こんにちはもしもし
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com