qt做web服务器,qtwebkitwidgets

  qt做web服务器,qtwebkitwidgets

  Qt Webkit能做什么(2) ——显示网页获取网络服务——中文-英特尔软件网络

  Qt Webkit能做什么(2) ——显示网页获取web服务程大位程大伟(英特尔)(38篇文章)

  日期:2010年6月8日下午2:21在第二篇文章中,我们实现了一个非常简单的例子。使用Qt WebKit显示网页。

  注意:网上有很多demo,包括官方doc中的相关例子和诺基亚Qt的示例文档。但也有一些不完整的地方,编译运行时甚至无法显示网页。这是因为有几个小地方没被注意到,有些博主可能实际上并没有自己编。由于这个演示非常简单,粘贴所有的源代码。

  1.创建新的main.cpp

  #包含QtGui

  #包含QtWebKit

  int main(int argc,char *argv[])

  {

  QApplication a(argc,argv);

  //设置网络代理:使用系统代理。

  QNetworkProxyFactory:setUseSystemConfiguration(true);

  //显示网页

  QWebView视图;

  view . load(QUrl(http://Qt . Nokia . com));

  view . show();

  返回a . exec();

  }

  2.创建新的web.pro文件

  显示网页只需要几行源代码,但是在。pro文件,需要进行以下更改。

  QT=webkitnetwork //这里不仅需要webkit模块,还需要network模块。因为Webkit依赖于网络

  标题=

  SOURCES=main.cpp

  资源=

  3.编译并运行

  $ qmake-项目

  $ qmake

  $ make

  $ ./web

  运行结果如下:

  为了提高响应时间,我们可以增加缓存系统。qdek Services:Storage Location中的CacheLocation枚举函数可以处理在跨平台情况下指定存储位置的情况。使用QabstractNetworkCache接口,可以自己实现和使用定制的缓存系统。

  以下四行代码可以增加本地缓存以改善响应时间:

  QNetworkDiskCache * disk cache=new QNetworkDiskCache(this);

  QString location=QDesktopServices:storage location(QDesktopServices:cache location);

  diskCache- setCacheDirectory(位置);

  networkAccessManager-set cache(disk cache);

  有些网站不仅提供内容,还提供各种服务。网络的内容多种多样,从货币汇率信息到企业应用程序与外部网络的连接。通过Qt WebKit集成,可以在应用程序中使用这些网络服务。例如,Twitter认证请求的代码:

  QNetworkRequest请求(" http://witter . com ");

  req . setrawheader( Authorization ,basic base 64);

  QNetworkReply * reply=manager-get(请求);

  这里介绍如何在Qt webkit中显示网页和使用web服务。

  第三部分将介绍如何使用web扩展功能,即HTML/CSS/JS工具来设计Qt webkit中的应用程序。

qt做web服务器,qtwebkitwidgets