我正在尋找適用於HTTP請求的輕量級IdHTTP替代方案。最好不使用WinINet的。我需要向我自己的網站發送請求(這樣我可以配置任何可能需要的設置)。如何在不使用Indy或WinINet的情況下發送HTTP請求?
-2
A
回答
5
爲了實現最大控制量和最少開銷,只需直接使用WinSock API並手動發送您自己的HTTP請求即可。有關HTTP協議的詳細信息,請閱讀RFC 2616。
+1
...以及您自己編寫的大部分代碼。不要忘記編寫自己的TCP/IP協議棧,因爲依賴於Windows DLLs是不好的(否則我們會使用WinHttp)。我同意不使用WinInet,但WinHttp是理智的方法。 –
0
嘗試SynapseLib。不過,我不確定它是否使用WinInet。
2
除非你真的知道你在做什麼,否則我不會推薦做太低級別的HTTP東西。
進入命令提示符,然後輸入:
telnet www.yoursite.com 80
等待你直到連接。現在鍵入
GET/
好吧,那很容易。
但是在這之後它變得非常複雜。您必須解析標頭,處理重定向,超時,緩存,代理等。 使用最天真的單線程實現,您的應用程序可能會凍結,直到您的下載完成。
你可能可以在你的應用程序中做你需要做的事情,但作爲一個通用的HTTP客戶端,你的實現將會很糟糕,除非你花很多時間去做正確的事情。
0
我個人喜歡導入MSXML2_TLB並使用CoServerXmlHTTPRequest.Create,特別是如果我在同一個項目中需要XML。
相關問題
- 1. 使用Wininet發送多個Http請求
- 2. 如何在不使用System.Net類的情況下在C#中發送HTTP請求?
- 3. 如何使用WinInet API在Delphi中發送HTTP POST請求
- 4. 如何使用Indy發送DELETE請求?
- 5. 如何在不使用CURL的情況下運行HTTP請求
- 6. 如何在不刷新的情況下發送查詢請求?
- 7. 如何在不使用LWP :: UserAgent或HTTP :: Request的情況下在Perl中發送HTTPS請求?
- 8. 如何在沒有Ajax的情況下觸發HTTP PUT請求?
- 9. 如何在python中沒有方案的情況下發送http請求?
- 10. 如何在沒有HttpServletresponse的情況下發送回應請求
- 11. 在不使用外部服務器的情況下使用Indy發送郵件
- 12. 在不提示的情況下發送Internet請求
- 13. 在不提交HTML表單的情況下發送POST請求
- 14. 如何在不使用Json的情況下在android中執行HTTP POST請求
- 15. 如何在不發出http請求的情況下在c#中生成WSDL
- 16. 如何在不發出HTTP請求的情況下在HTML中顯示「密鑰」?
- 17. 如何在未授權的情況下使用android volley重新發送請求
- 18. 如何在不等待Ruby中的響應的情況下發出HTTP請求
- 19. 如何使用Telnet發送HTTP請求
- 20. 如何在不顯示零的情況下在wordpress中發送ajax請求
- 21. 在不使用Outlook的情況下發送實際的outlook會議請求
- 22. 在不使用FBML的情況下發送邀請
- 23. 如何在不等待響應的情況下從XMLHTTP發送請求?
- 24. 如何在我的情況下做出多個http請求?
- 25. 如何在我的情況下測試一個http請求
- 26. 如何在我的情況下傳遞http請求結果?
- 27. 如何在我的情況下嘲笑http請求
- 28. 如何在我的情況下處理多個http請求?
- 29. 如何在不包含發送http頭文件的情況下使用WordPress $ wpdb?
- 30. 在沒有Outlook的情況下發送Outlook會議請求?
那麼,WinINet太高級了(太嚴格了)? –
使用'TIdHTTP'有什麼問題? –
沒有「輕量級」的定義,這不是一個問題 –