http

package
v0.0.0-...-5415eb5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 23, 2024 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

Package http implements crazy ideas for http optimizations that should be mostly std compatible.

Index

Constants

This section is empty.

Variables

View Source
var ErrInternalServerErrorResponse = errors.New("internal server error response")

ErrInternalServerErrorResponse reports that response was a internal server error type.

View Source
var ErrNotImplemented = errors.New("not implemented")

ErrNotImplemented reports that handler is not implemented.

Functions

func CreateBodyWriter

func CreateBodyWriter(cb func(w io.Writer) error) io.ReadCloser

CreateBodyWriter is a helper to create a reader from a writer body.

func CreateMultipartBody

func CreateMultipartBody(cb func(mw *multipart.Writer) error) (body io.ReadCloser, boundary string)

CreateMultipartBody is helper for streaming multipart/form-data.

func MatchContentType

func MatchContentType(pattern, value string) bool

MatchContentType returns true if value matches path pattern.

func NewRequest

func NewRequest(ctx context.Context, method string, u *url.URL) (*http.Request, error)

NewRequest creates a new http.Request.

func ParseForm

func ParseForm(r *http.Request) (url.Values, error)

ParseForm is optimized version of http.Request.ParseForm.

Difference from http.Request.ParseForm:

  • This function does not modify any fields of http.Request. The only copy of the form values is returned.
  • This function does not check Content-Type header.

func SetBody

func SetBody(req *http.Request, body io.Reader, contentType string)

SetBody sets request body.

func SetCloserBody

func SetCloserBody(req *http.Request, body io.ReadCloser, contentType string)

SetCloserBody sets request body which should be closed after request.

Types

type Client

type Client interface {
	Do(r *http.Request) (*http.Response, error)
}

Client represents http client.

type MultipartFile

type MultipartFile struct {
	Name   string
	File   io.Reader
	Size   int64
	Header textproto.MIMEHeader
}

MultipartFile is multipart form file.

func (MultipartFile) WriteMultipart

func (m MultipartFile) WriteMultipart(fieldName string, w *multipart.Writer) error

WriteMultipart writes data from reader to given multipart.Writer as a form file.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL