2013-02-13 40 views
8

我正在使用libcurl。這是非常好的(作爲客戶端),我曾經打開一個套接字到服務器,然後發送我的http數據包。如何使用libcurl開發http服務器

我想知道是否有可能用libcurl開發http服務器。 http服務器將偵聽給定的端口,然後當它接收到一個http數據包時,http服務器返回一個摘要認證需求。

我在stackoverflow和curl網站做了一些研究,但沒有結果。

用libcurl可以做到這一點嗎?以及如何做到這一點?

+1

cURL是客戶端庫,它不適合開發服務器。 – 2013-02-13 11:01:25

回答

9

要重複其他人所說:沒有,libcurl的不是服務器。甚至可以這樣說:curl FAQ

5.17我可以用libcurl寫一個服務器嗎?

編號libcurl沒有提供任何功能或構建模塊來構建任何類型的互聯網協議服務器 。 libcurl只是一個客戶端庫。 對於服務器庫,您需要繼續在其他地方進行搜索,但 那裏有許多優秀的開源代碼,對於大多數協議 您可能需要服務器。並且有很多經過多年測試和驗證的獨立產品。 有沒有必要重新發明它們!

0

這似乎並不libcurl的目的,正如你所說的libcurl作爲客戶端,看看到http://www.gnu.org/software/libmicrohttpd/

+0

我看到代碼源,它看起來是一個巨大的程序。我正在尋找一個小代碼,包括我的代碼只是爲了處理這個特定的情況 – MOHAMED 2013-02-13 11:25:34

+0

是否可以從你給它做的代碼中提取一些函數? – MOHAMED 2013-02-13 11:26:57

2

你需要一些HTTP 服務器庫(因爲libcurl的僅僅是一個HTTP 客戶 librart)我會建議使用libonion但也有其他幾個HTTP服務器框架(libmicrohttpd,在C++ POCO & Wt。 ...)。

HTTP是一個複雜的協議,即使編碼一個微小的子集的服務器(如純GET請求,而無需像條件請求,編碼&壓縮等所有有用的功能...)它是合理可行的。因此,我建議使用一個功能齊全的HTTP服務器庫,並且這不能是一個小型的庫。

相關問題