• <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伊人| 久久香蕉综合色一综合色88| 亚洲国产精品一区二区三区久久| 久久乐国产综合亚洲精品| 国产69精品久久久久99尤物 | 久久91精品综合国产首页| 久久笫一福利免费导航 | 亚洲中文字幕无码一久久区| 亚洲国产精品久久| 理论片午午伦夜理片久久| 久久se这里只有精品| 一本一道久久a久久精品综合 | 亚洲第一永久AV网站久久精品男人的天堂AV| 亚洲国产精品无码久久久不卡| 无码人妻少妇久久中文字幕蜜桃| 久久无码人妻一区二区三区| 成人久久综合网| 亚州日韩精品专区久久久| 国产产无码乱码精品久久鸭| 国产精品久久永久免费| 亚洲国产精品久久久久婷婷老年| 久久丝袜精品中文字幕| 国产精品久久久久无码av| 无码精品久久一区二区三区| 精品国产乱码久久久久久呢| 久久久国产精品网站| 久久99久久99精品免视看动漫| 99久久国产主播综合精品| 久久人人爽人人爽人人片av高请| 精品久久久无码中文字幕天天| 中文精品久久久久人妻不卡| 精品久久人人爽天天玩人人妻| 久久精品国产精品亚洲精品| 一本大道久久香蕉成人网| 99久久无码一区人妻| 久久久黄片| 色欲久久久天天天综合网精品| 国内高清久久久久久| 久久久久久久久久久精品尤物| 中文精品久久久久人妻不卡|