Linux + C + libcurl + POST + gzip + http
Oct. 10th, 2016 11:01 pmДа, что-то я не думал, что для отправки через сишный libcurl сжатого содержимого с помощью gzip по http(s) на Линуксе будет столько проблем.
Думал, ну, поставлю там какой-то признак у библиотеки при отправке - "сжать таким-то способом" - и всё! А фиг там!
Во-первых, это - не по стандарту, т.к.без объявления войны отправляя сжатый контент - ты не согласовал с сервером возможные варианты сжатия, а вдруг - он не умеет!
Де-факто, конечно, умеют сервера нынче такое.
Во-вторых, не умеет libcurl такую экзотику. Вот, если получить сжатый боди от сервера в любом из распространённых методов сжатия и отдать его пользователю распакованным - другое дело! Вот такое вот отсутствие симметрии в мире... https://curl.haxx.se/mail/lib-2009-12/0184.html
В-третьих, даже если проблема известная, де-факто - работающее решение, найти на халяву код (через гугл, например), чтобы выдрать и использовать у себя - это ещё то развлечение! Или я неправильно запросы к поисковику составлял?
curl post send Content-Encoding gzip ... ?
Думал, ну, поставлю там какой-то признак у библиотеки при отправке - "сжать таким-то способом" - и всё! А фиг там!
Во-первых, это - не по стандарту, т.к.
Де-факто, конечно, умеют сервера нынче такое.
Во-вторых, не умеет libcurl такую экзотику. Вот, если получить сжатый боди от сервера в любом из распространённых методов сжатия и отдать его пользователю распакованным - другое дело! Вот такое вот отсутствие симметрии в мире... https://curl.haxx.se/mail/lib-2009-12/0184.html
В-третьих, даже если проблема известная, де-факто - работающее решение, найти на халяву код (через гугл, например), чтобы выдрать и использовать у себя - это ещё то развлечение! Или я неправильно запросы к поисковику составлял?
curl post send Content-Encoding gzip ... ?