0
我想创建一个模仿WebIntents-like功能的PoC应用程序。 因此,在我的Qt应用程序中,我创建了两个QWebviews,启动两个不同的WebApp。现在,让我们称他们为应用程式A和B.
场景:
- 主要应用创建了两个QWebViews每启动一个应用程序,即APPA,APPB。
- 应用程序A被编程为自动通过AJAX获取一些数据。
- 应用程序B还需要这些数据的一部分。 AppB只显示一个名为的按钮(HTML)。 注意:因为AppA已经有了这些信息,所以我希望AppB通过在QWebView启动时通过addToJavaScriptWindowObject()方法调用将其注入到它的(appB)DOM中的JavaScript API。
- App-A完成了Ajax调用,并在其WebView中指示完成。
- 用户单击AppB中的按钮,
- 应用程序B调用JavaScript API,即fetcData({source:“AppA”);
- 现在控制在QT世界:
问题:控制是APPB的情况下,我应该如何在APPA web视图沟通 - 即APPB问APPA:哎APPA ,请给我你提取的数据?
信号和插槽可以帮助我吗?或者我应该使用其他形式的IPC。
我读到此页面:http://qt-project.org/doc/qt-4.8/qtwebkit-bridge.html,但我仍然没有得到解决我的问题的提示。
另一个相关的问题:QWebViews在他们自己的线程中创建?
对不起,我的问题有一个错字,我刚刚解决了这个问题。 – Karthik
AppB不需要这样的信号。因为它是一个概念验证。我没有让AppA发出“数据准备就绪”的“完成抓取”类型的信号。因此,用户(即我)将点击AppB上的按钮以通过QT获取数据。这将在看到AppA的QWebView填充了获取的数据后完成。 – Karthik
因此,在这种情况下,AppB需要获取AppA的WebView的句柄并调用方法AppB :: fetchData(在QT-CPP中)。这个方法反过来需要调用AppB的QWebView的JavaScript代码,它包含数据!我不完全确定如何实现这一点。 – Karthik