linux c++ curl + python http.server
если запускаю server, он работает. то есть если зайти на localhost:8000 из браузера, видно содержание директории, откуда запустил. и в консоли сервера также видно, что ему пришел запрос и т.д.
если же пьітаюсь связаться как здесь, ничего путного не вьіходит:
* About to connect() to localhost port 8000 (#0)*
Trying ::1... * Connection refused*
Trying 127.0.0.1... * connected*
Connected to localhost (127.0.0.1) port 8000 (#0)
> GET / HTTP/1.1Host: localhost:8000
Accept: */*
. HTTP/1.1
404 Not Found< X-Powered-By: Express
. Access-Control-Allow-Origin: *
. Access-Control-Allow-Headers: X-Requested-With
. Content-Type: text/plain
. Date: Mon, 11 Jul 2022 13:51:29 GMT
. Connection: keep-alive
. Transfer-Encoding: chunked
.callback size: 1
last_response_str: Cannot GET /
єто - и при запущенном сервере, и при не. только непонятно тогда, с кем єто оно сконнектилось в строках 3 и 4.
в любом случае в консоли сервера - никаких следов соединения/коммуникации.
подскажите, куда копать. options каких только уже не перепробовал.
вонано пачиму она не стреляла: незаряженнаябьіла!
тормознул конкретно.
c++ -> vm, server -> host.
естесссно, localhost у каждого свой. достаточно бьіло ipconfig вьіполнить на хосте, и нужньій адрес задать курлу. и все сразу покатилось
зі. запустить python http server можно еще проще, чем в примере по моей ссьілке в первом посте:
из командной строки python -m http.server по умолчанию слушает порт 8000, но можно аргументьі задавать при запуске.
я не для забавьі все єто продельівал. нужно в'єхать в тему.
пока вот просимулировал запрос-ответ в виде "какой-то текст"/"какой-то текст".
живой сервер когда будет - никто сказать не может, спросил шефа когда будет спецификация, он говорит, что там есть два документа. я их уже десяток раз перечитал, для меня они вьіглядят как "декларация о намерениях".
Что вы должны получить, чтобы иметь возможность отправлять RESTful-запрос на http-сервер?
Достаточно ли будет такого описания:
REST
http 1.0 (или 1.1, будет определено позже)
Request:
message SomeRequest {
int number = 1; //our number
}
их так около десятки типов, єтих "сообщений", но все специфицированьі аналогично. я могу только оттуда понять, как запрос/ответ назьівается, и какие данньіе содержит.
тема для меня чужая, потому спрошу гуру'в. вьі можете по такой спецификации послать, например, запрос на серевер? допустим, url и port вам тоже сообщили.
если да, то как?
если нет, то что еще необходимо для того, чтобьі да? и как тогда?
спасибо! не забуду вовеки!
Для начала поиграйтесь с postman и https://reqres.in/
https://reqres.in/api/users?page=2
Смысл простой - параметры переводятся в/из JSON и передаются одной строкой
чтоб правильно слать запросы, надо знать спецификацию конкретного API. Один и тот же endpoint может в зависимости от haeder или query parameters отдавать различный body + надо знать шо он там понимает POST/PUT/GET/DELETE...
Грамотные девелоперы представляют к своему API чет типа swaggre-ui
спасибо, я себе где-то так єто и представлял. не обязательно в таком формате, но именно єти данніе.
и я нигде не прочиталв "спецификации", что там внутри - json. еще позавчера бьіло дополнено, что http 1.0 without envelope. что єто означает? раньше еще говорили, что будут стараться по возможности передавать информацию только в header'ах. в общем, замораживаю єто направление, пока не получу окончательньій технически полньій документ, т.к. существующей на сегодня инфьі, я понимаю, и опітньім вєбщикам недостаточно, а мне и подавно.