我正在研究一個應用程序,其中 - 我必須打一個URL並獲取從該URL返回的HTTP狀態代碼。目前我正在使用WININET函數來實現這一點。實現此目的的代碼:C++:從URL獲取HTTP狀態代碼
hOpen = InternetOpenA(「MYAPP」,INTERNET_OPEN_TYPE_DIRECT,NULL,NULL,0); hFile = InternetOpenUrlA(hOpen,url.c_str(),NULL,0,INTERNET_FLAG_RELOAD,0); HttpQueryInfoA(hFile,HTTP_QUERY_STATUS_CODE,(void *)buffer,& dwBufLen,NULL);
我做了一些檢查以查看性能,我可以看到平均一次命中需要大約300毫秒。由於我將拍攝多首歌曲,所以總時間約爲8-10秒,這會減慢整個應用程序的速度。
同樣在MAC上也實現了約100毫秒左右(我正在使用COCOA)。
那麼WIN上有沒有其他的API可以用來讓它更快?
由於提前, 阿米特
你可以使用boost :: asio庫。它可能會更快。 – Xorlev 2010-03-04 05:42:13
你是否做過任何包嗅探,看看實際的URL檢索需要多長時間。所用的時間取決於URL。 – Murray 2010-03-04 05:48:51
實際上我們不能包括任何其他庫..所以我必須依靠標準的C++調用... – eramitmodi 2010-03-04 08:47:59