2016-08-04 135 views
-1

我想使用C語言實現RESTful Web服務。用C語言做網絡和所有相關事物的最佳方式是什麼?使用C語言實現Web服務

+0

你開始搜索什麼?什麼是你遇到的_exact_問題?在問這裏之前,我建議你一下Google。這不是一個全部是我的研究網站 –

+0

我對C語言的網絡沒有任何概念,並且我沒有找到關於此主題的足夠材料。如果你有一些內容,那麼請給我建議。我一定會經歷這些內容。 –

回答

2

RESTful API並不是很難創建,許多語言已經有框架來做到這一點(C#,JEE,...)。在C中,你將不得不自己做所有事情。

一個月前我不得不爲一個學校項目做到這一點。你只需要幾件事情:

  • 一個網絡服務器(GNU的libmicrohttpd是一個很好的)
  • 解析器,我個人做了我自己的使用regex.h這是一個有點難以在第一,但真的很強大。該解析器將處理URL請求及其數據(例如GET或POST數據),並將它們解析爲API使用的正確結構。請求數據通常以JSON格式表示,因此您可能還需要JSON解析器,我使用了良好的JANSSON庫。
  • 系統以您想要的方式存儲數據。最簡單的是連接到adatabase,我使用了MySQL數據庫,該MySQL C API是完美

論文鏈接可以幫助您找到一些更多的細節:

-1

您可以寫e您的應用程序作爲FastCGI服務器,相對簡單 - 您的程序基本上由一個調用FCGI_Accept()的循環組成,處理參數並寫出每個請求的響應。

然後,這個FastCGI服務器可以運行在處理http,ssl,身份驗證,服務靜態文件等的web服務器(Apache,nginx ...)之後,因此您不必處理所有這些。