myhttp alternatives and similar packages
Based on the "Utilities" category.
Alternatively, view myhttp alternatives based on common mentions on social networks and blogs.
-
项目文档
🚀Vite+Vue3+Gin的开发基础平台,支持TS和JS混用。它集成了JWT鉴权、权限管理、动态路由、显隐可控组件、分页封装、多点登录拦截、资源权限、上传下载、代码生成器、表单生成器和可配置的导入导出等开发必备功能。 -
excelize
Go language library for reading and writing Microsoft Excel™ (XLAM / XLSM / XLSX / XLTM / XLTX) spreadsheets -
godotenv
A Go port of Ruby's dotenv library (Loads environment variables from .env files) -
Kopia
Cross-platform backup tool for Windows, macOS & Linux with fast, incremental backups, client-side end-to-end encryption, compression and data deduplication. CLI and GUI included. -
go-funk
A modern Go utility library which provides helpers (map, find, contains, filter, ...) -
hystrix-go
Netflix's Hystrix latency and fault tolerance library, for Go -
lancet
A comprehensive, efficient, and reusable util function library of Go. -
gorequest
GoRequest -- Simplified HTTP client ( inspired by nodejs SuperAgent ) -
goreporter
A Golang tool that does static analysis, unit testing, code review and generate code quality report. -
gojson
Automatically generate Go (golang) struct definitions from example JSON -
create-go-app
✨ A complete and self-contained solution for developers of any qualification to create a production-ready project with backend (Go), frontend (JavaScript, TypeScript) and deploy automation (Ansible, Docker) by running only one CLI command. -
spinner
Go (golang) package with 90 configurable terminal spinner/progress indicators. -
EaseProbe
A simple, standalone, and lightweight tool that can do health/status checking, written in Go. -
filetype
Fast, dependency-free Go package to infer binary file types based on the magic numbers header signature -
mole
CLI application to create ssh tunnels focused on resiliency and user experience. -
boilr
:zap: boilerplate template manager that generates files or directories from template repositories -
mimetype
A fast Golang library for media type and file extension detection, based on magic numbers -
beaver
💨 A real time messaging system to build a scalable in-app notifications, multiplayer games, chat apps in web and mobile apps. -
go-underscore
Helpfully Functional Go - A useful collection of Go utilities. Designed for programmer happiness. -
JobRunner
Framework for performing work asynchronously, outside of the request flow -
git-time-metric
Simple, seamless, lightweight time tracking for Git
WorkOS - The modern identity platform for B2B SaaS
Do you think we are missing an alternative of myhttp or a related project?
Popular Comparisons
README
MyHttp
Easy to use API to make timeout supported http GET requests in Go.
MyHttp is for coders who don't want to write timeout support logic and don't want to deal with heavy APIs, just to make http GET request in Go.
It's battle-tested in production and has tests which even verifies connection leaking issues.
I'd been dealing with this issue myself, I read many documents, and saw that there are no simple and lightweight APIs to do http GET request with timeout logic. So, I created MyHttp in one of my projects and wanted to move it here.
Installation
go get github.com/inancgumus/myhttp
Documentation
See MyHttp GoDoc for the documentation.
Usage example
Get
Get
simply gets the url and returns an http.Response
.
import (
"time"
"github.com/inancgumus/myhttp"
)
mh := myhttp.New(time.Second * 10) // timeout after 10 seconds
res, err := mh.Get("http://www.domain.com/foo")
if err != nil {
panic(err)
}
// use res here...
WrapGet
WrapGet
accepts a function in its second argument and runs it after getting the http.Response
from the url and automatically closes the http.Response.Body, in case you may forget to close it.
import (
"time"
"github.com/inancgumus/myhttp"
)
mh := myhttp.New(time.Second * 10) // timeout after 10 seconds
err := mh.WrapGet("http://www.domain.com/foo", func(r *http.Response) error {
// use res here...
// MyHttp will automatically close http.Response.Body for you after this func ends.
})
if err != nil {
panic(err)
}
Author
Inanc Gumus – @inancgumus
Distributed under the MIT license. See LICENSE
for more information.
Contributing
- Fork it (https://github.com/inancgumus/myhttp/fork)
- Create your feature branch (
git checkout -b feature/foo
) - Commit your changes (
git commit -am 'add: foo'
) - Push to the branch (
git push origin feature/foo
) - Create a new Pull Request
*Note that all licence references and agreements mentioned in the myhttp README section above
are relevant to that project's source code only.