• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            stevenyao

              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              22 隨筆 :: 1 文章 :: 67 評論 :: 0 Trackbacks
            Qt 是支持 SSL的,但是由于某些法律和政策因素,QT的開發(fā)包里并沒有集成openSSL。QT采用兩種方式調(diào)用openSSL,默認(rèn)方式是動態(tài)加載openSSL的 DLL。
            在Windows系統(tǒng)上默認(rèn)沒有openSSL,需要自己安裝。 可以在這里下載源代碼,自己編譯
            http://www.openssl.org/source/
            也可以在這里下載編譯好的版本,直接安裝
            http://www.slproweb.com/products/Win32OpenSSL.html

            如果要靜態(tài)鏈接ssl,那就要自己重新編譯QT才行,首先設(shè)置環(huán)境變量 OPENSSL_LIBS,指向你的openSSL的lib目錄,然后執(zhí)行configure的時候使用以下參數(shù)
            configure -openssl-linked

            使用方法和簡單和普通的 http請求沒什么不同。
            QUrl url(http://code.google.com");
            QHttp *http = new QHttp();
            http
            ->setHost(url.host(), QHttp::ConnectionModeHttps, url.port());
            QFile 
            *file = new QFile("index.htm");
            file
            ->open(QIODevice::WriteOnly)
            int httpGetId = http->get(path, file);
            由于QHttp是異步調(diào)用,你需要連接幾個signal來獲取下載進(jìn)度。
            在S60平臺,以上代碼也是可以運行的,需要注意的是在 Qt 4.6 beta版本里我懷疑有個bug,qt會在s60上試圖去加載 ssleay32.dll,但是在s60上openSSL的DLL名字是 libssl.dll。 這個問題已經(jīng)在最新的 QT 4.6 正式版本里修復(fù)了,請更新到最新的QT. 另外,如果以上代碼在 S60上運行,這個 index.htm文件會被創(chuàng)建在程序的私有目錄里,這個目錄是文件管理器看不到的,所以要改成 類似 c:\\index.htm的名字,好用來驗證下載是否正確。  

            現(xiàn)在的 QT 其實并不推薦繼續(xù)使用 QHttp了,應(yīng)該用 QNetworkAccessManager,這是一個更先進(jìn)的網(wǎng)絡(luò)連接服務(wù),其行為和你的瀏覽器基本一致,包括了代理和緩沖的支持,所以這也是QT webkit使用的連接方式。
            posted on 2009-12-11 13:51 姚冬 閱讀(11212) 評論(2)  編輯 收藏 引用

            評論

            # re: 用 Qt 訪問 https 2009-12-12 13:13 99書城網(wǎng)
            包括了代理和緩沖的支持,所以這也是QT webkit使用的連接方式。
              回復(fù)  更多評論
              

            # re: 用 Qt 訪問 https 2013-02-26 11:33 王牌軟件
            http://qt-project.org/faq/answer/how_can_i_add_ssl_support_to_my_qt_application  回復(fù)  更多評論
              


            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            久久精品国产亚洲AV久| 久久午夜电影网| 国产成人精品综合久久久久 | 日韩一区二区久久久久久| 国产亚州精品女人久久久久久 | 久久久久九九精品影院| 99久久香蕉国产线看观香| 99精品国产在热久久无毒不卡| 精品久久人人妻人人做精品| 国产精品中文久久久久久久| 久久伊人精品青青草原高清| 久久久这里有精品| 四虎国产精品免费久久5151| 久久国产色av免费看| 久久精品成人欧美大片| 久久99精品久久久久久| 久久人人爽人人爽人人片AV高清| 国产成人香蕉久久久久| 99999久久久久久亚洲| 久久精品中文字幕一区| 久久久噜噜噜久久中文字幕色伊伊| 日韩AV无码久久一区二区| 久久国产热这里只有精品| 一本久久知道综合久久| 国产精品午夜久久| 伊人久久大香线焦AV综合影院| 久久国产乱子精品免费女| 日韩欧美亚洲综合久久影院Ds| 国产精品毛片久久久久久久| 狠狠色丁香久久婷婷综合五月| 久久香综合精品久久伊人| 久久综合久久性久99毛片| 国产无套内射久久久国产| 品成人欧美大片久久国产欧美...| 久久亚洲欧美国产精品| 国产成人精品综合久久久久| 久久人人爽人人人人爽AV| 色婷婷久久久SWAG精品| 性做久久久久久久久浪潮| 日韩人妻无码一区二区三区久久99| 久久亚洲AV无码精品色午夜|