2011-12-15 24 views
9

Tôi chỉ cần thực hiện một SOAP qua yêu cầu HTTP trong một ứng dụng. Không có phương tiện giao thông nào khác ngoài HTTP, tôi sẽ chỉ yêu cầu và giải quyết phản hồi. Do nó chỉ là một yêu cầu, tôi không thực sự cần một cái gì đó có một bộ tạo mã C++ từ WSDL, chỉ cần một số API để xây dựng yêu cầu.
Điều này sẽ có trên hệ thống hạn chế bộ nhớ và CPU (cánh tay), cũng thường bị tê liệt trong bộ phận thư viện hỗ trợ.
Tôi có thể làm đồng bằng C hoặc C++, tôi có một số loại (cũng bị tê liệt) STL, nhưng không nhiều khác và tôi không muốn thêm quá nhiều megabyte thư viện.
Tôi có libxml2 (không chắc chắn nếu nó có bất kỳ kết nối nào, nhưng tôi là SOAP noob) trên nền tảng đích của tôi.
Cần phải biên dịch trên gcc/linux, tất nhiên. Tôi có thể xử lý bất kỳ x86-> chuyển đổi tay lẻ.
gSOAP là một trong những câu hỏi vì cấp giấy phép và độ cao.
Một số googling dẫn tôi đến http://simplesoap.sourceforge.net/ nhưng tôi muốn nghe nếu có bất kỳ lựa chọn thay thế trước khi tôi nhảy vào.
Vì vậy, bất kỳ sugesstions khác từ các thành viên SO đồng nghiệp? Cảm ơn bạn.Thư viện SOAP C/C++ Linux nào? Cần các đề xuất rất nhẹ


simpleSOAP không biên dịch bằng gcc hiện đại (ví dụ: lỗi: lấy địa chỉ tạm thời [-fpermissive]). Tôi có thể sửa chữa nhưng không phải cho một yêu cầu.
Vì vậy, ... hướng dẫn sử dụng là ...

+1

Kiểm tra cpp-netlib? http://cpp-netlib.github.com/ – Arunmu

+0

@ArunMu: liên kết tốt, tôi không biết điều này, cảm ơn! – neuro

+0

@Torp: Câu hỏi hay (+1)! xà phòng đơn giản có vẻ OK. Tôi đã thực hiện một câu trả lời để đề xuất một thay thế – neuro

Trả lời

1

Vâng, nếu đơn giản, bạn có thể sử dụng một mức HTTP thấp như libcurl và mã yêu cầu của bạn bằng tay hoặc sử dụng một lib xml.

Tôi không biết simplesoap. Tôi vừa duyệt trang web, có vẻ như đầy đủ ^^

Tôi đồng ý với bạn trên gSoap :)

2 xu của tôi.

0

Nửa thập kỷ muộn để xem cái này, nhưng tôi muốn đề cập đến một dự án khác.

csoap, được viết bằng C và sử dụng libxml. Tôi lưu ý chắc chắn về tất cả các tính năng của nó, nhưng nó chắc chắn sẽ là một sự thay đổi trong hướng dẫn sử dụng đầy đủ.

+0

csoap là LGPL, đề cập đến điều này vì OP cho biết gsoap (GPLv2) quá hạn chế. vì vậy tôi giả sử họ không muốn liên kết tĩnh csoap. –

+0

Tôi nghĩ rằng những gì bạn đang nói là đúng, tuy nhiên cá nhân tôi không giải thích LGPL theo cách gần như được phép như bạn. Bạn có thể cung cấp ví dụ về chương trình Microsoft không * nguồn mở và liên kết tĩnh với mã LGPL không? –

+0

@WilburWhateley libgit2.github.com tự sửa lỗi sẽ ít bị hạn chế hơn vì GPL có ngoại lệ tĩnh. Có vẻ như bạn khá nhiều phải liên kết động cho thư viện LGPL ... mà rõ ràng người ta nên làm cho một thư viện vững chắc, và không phải là một stooge và sử dụng một POS chỉ đơn giản bởi vì nó được cấp phép cho phép – TechZilla

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