Как использовать context при работе с API, используя fasthttp?
Здравствуйте, в данный момент я пишу небольшую либу по работе с API и увидел, что для работы с апишками требуемо в свой код внести context.Context по причине того, что он для этого и предназначен.
Чтобы библиотека не была тормозной я использую fasthttp. К сожалению у типа Request в fasthttp нет метода WithContext как в net/http.
Возможно кто-нибудь знает каким образом можно контекстом воспользоваться, отправляя запросы на api сервера с помощью fast'а.
Зачем вам fasthttp? У вас какой-то лютый хайлоад намечается? Если не планируете обрабатывать более 300К rps просто берите net/http + какой нибудь нормальный роутер и не мучайтесь.
Можно реализовать свои методы, которые будут использовать контекст и далее вызывать методы из фреймворка. Другой вопрос что непонятно как именно контекст будет использоваться и какую цель преследует использование именно fasthttp и контекста как такового, возможно и правда достаточно будет стандартного net/http и мультиплексера типа гориллы mux
fasthttp.RequestCtx и есть контекст, он реализовывает все методы интерфейса Context и может быть использован в качестве контекста там где нужен объект context.Context. Если я правильно понял что вам надо.
Используя стандартный net/http я просто вызываю метод NewRequestWithContext и первым параметром передаю полученный от пользователя контекст так, чтобы обращение в стороннему API происходило под каким то контекстом, естественно, что это объект реализующий context.Context. Этим вопросом я пытался найти альтернативу, с помощью которой так же можно было бы реализовать выполнение методов в моем коде. Вы посоветовали RequestCtx, но что-то я, почитав доки, малейшего представления не приобрел. Не могли бы ли Вы, пожалуйста, подсказать мне подробнее, каким образом я мог бы воспользоваться этой структурой?