Введение
В этом проекте вы научитесь реализовывать прозрачную модификацию HTTP-запросов с использованием интерфейса http.RoundTripper
в Go. Вы создадите пользовательский HTTP-транспорт, который вычисляет MD5-хэш тела запроса и добавляет его в заголовок запроса в качестве поля "X-Md5".
👀 Предварительный просмотр
$ /usr/local/go/bin/go test
PASS
ok md5transport 0.004s
🎯 Задачи
В этом проекте вы научитесь:
- Как инкапсулировать интерфейс
http.RoundTripper
для выполнения пользовательских операций с HTTP-запросами и ответами. - Как вычислять MD5-хэш тела запроса и добавлять его в заголовок запроса.
- Как сбросить тело запроса после вычисления MD5-хэша, чтобы сохранить исходное состояние запроса.
🏆 Достижения
После завершения этого проекта вы сможете:
- Разобраться в концепции прозрачной модификации HTTP-запросов в Go.
- Реализовать пользовательские HTTP-транспортные слои, которые могут выполнять различные операции с запросами и ответами.
- Применить полученные знания для расширения собственных приложений дополнительными функциями, такими как аутентификация, логирование или манипуляция с запросами/ответами.