Страницы

четверг, 22 ноября 2012 г.

Http класс на C++

     Давным давно в далекой-далекой галактике  мне нужно было загружать на сервер файлы, и я не придумал ничего лучшего, чем делать это по протоколу HTTP. Тупо из-за того, что он был наиболее мне известен. Софтина должна был работать в фоновом режиме на компьютере пользователя. Хотелось бы, что бы она работала быстро, поэтому написал ее я на C++. 
В итоге все вылилось в класс работы с HTTP c загрузкой файлов, а чтоб софт был еще и кроссплатформенный, использовал я для работы с Socket -ами boost, есть такая кроссплатформенная либа, о которой я мечтал, когда учился писать на C++.  Под катом С++ класс. Кроме всего прочего он еще и может и шифровать это все дело. Класс может загружать файлы на сервер, делать POST запросы, не умеет слать большой запрос частями.

Small C++ class for working through HTTP protocol using BOOST. It can use POST methods and uploading files





Интерес представляют собственно только методы

generate_post_header - получает параметры в виде hash объекта и возвращает сгенирированый POST запрос
make_query - собственно осуществляет сам запрос...
generate_post_header4send - генерирует запрос с прикрепленным файлом...


Собственно исходники :
http.h
http.cpp

P.S
    Внимание исходники не рабочии, а предоставленны для ознакомления, нужно в них убирать всякую логику для которой они писались это пара подключенных хедеров и вроде одна структура там всегда мелькает, а делать это бесплатно пока  лень. Хотя если вы мне заплатите, то без проблема допиляю их для вас.



Комментариев нет: