2010-04-11 27 views
26

Tôi đang tìm thư viện phân tích cú pháp HTTP cho C/C++. Tôi đã xem thư viện curl, nhưng có vẻ như đó là thư viện ứng dụng khách http. Tôi đang tìm thư viện phân tích tiêu đề HTTP (ví dụ: cách để nhận chuỗi truy vấn, nhận cookie, nhận url yêu cầu, nhận Dữ liệu bài đăng)?Đề xuất cho thư viện phân tích HTTP trong C/C++

Cảm ơn bạn.

+0

Bạn đang viết máy chủ web hoặc chương trình plugin hoặc cgi? tức là bạn có thực sự nhận được tiêu đề HTTP hoặc 'nấu chín' hay không? –

+0

Tiêu đề HTTP thô. Tôi cần phải vượt qua những gì tôi đọc từ một ổ cắm và phân tích cú pháp các tập tin tiêu đề http. – michael

+0

* "Các câu hỏi yêu cầu chúng tôi đề xuất hoặc tìm một công cụ, thư viện hoặc tài nguyên ngoài trang web yêu thích là không có chủ đề cho Stack Overflow vì chúng có xu hướng thu hút các câu trả lời và spam có ý kiến." * – abelenky

Trả lời

10

Check-out libebb, nó có một parser tạo ra với Ragel sử dụng dễ dàng nhưng mạnh mẽ PEG (nó dựa trên phân tích cú pháp lai Zed Shaw)

libebb là một thư viện HTTP server nhẹ cho C. nó đặt nền tảng để viết một máy chủ web bằng cách cung cấp các ổ cắm tung hứng và yêu cầu phân tích cú pháp. Bằng cách triển khai ngữ pháp HTTP/1.1 được cung cấp trong RFC2612, libebb hiểu hầu hết các kết nối HTTP/1.1 hợp lệ nhất (yêu cầu liên tục, pipelined và chunked) và từ chối yêu cầu không hợp lệ hoặc độc hại. libebb hỗ trợ SSL qua HTTP.

Ngoài ra kiểm tra this speedy parser

+3

trình phân tích cú pháp http được chuyển đến đây. [https://github.com/joyent/http-parser](https://github.com/joyent/http-parser) – douyw

+0

mã nguồn libebb ở đây -> https://github.com/taf2/libebb/ – ParokshaX

+0

Chúc bạn sẽ có một trình phân tích cú pháp insitu được viết bằng tay nhanh cho HTTP. – Lothar

13

Khoảng 6 tháng trước, tôi đang tìm kiếm chính xác điều tương tự. Sau đó, tôi tìm thấy trang này: HTTP Made Really Really Easy và tôi chỉ viết của riêng tôi ... Các công trình lớn, đáng ngạc nhiên đơn giản để thực hiện ...

+10

Đơn giản, nếu bạn không quan tâm tất cả các trường hợp góc phải. Mã trạng thái nhiều dòng, ký tự thoát, chuỗi quốc tế. –

+1

Đủ rồi. Không quan trọng cho việc sử dụng của tôi ... – dicroce

+0

Đã sáu năm kể từ khi nhận xét này được đưa ra. Bây giờ, tôi đang tìm http parser trong c cho hệ thống nhúng của tôi. Tôi chặt chẽ về tài nguyên hệ thống. @dicroce trải nghiệm của bạn với trình phân tích cú pháp http của riêng bạn như thế nào. Tôi có nên viết của riêng tôi hoặc sử dụng của người khác. – abhiarora

Các vấn đề liên quan