digestAuthClient

package
v0.5.0 Latest Latest
Warning

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

Go to latest
Published: Apr 13, 2017 License: MIT, BSD-2-Clause Imports: 13 Imported by: 2

README

go-http-digest-auth-client

Golang Http Digest Authentication Client

This client implements RFC7616 HTTP Digest Access Authentication and by now the basic features should work.

Usage

// import
import dac "github.com/xinsnake/go-http-digest-auth-client"

// create a new digest authentication request
dr := dac.NewRequest(username, password, method, uri, payload)
response1, err := dr.Execute()

// check error, get response

// reuse the existing digest authentication request so no extra request is needed
dr.UpdateRequest(username, password, method, uri, payload)
response2, err := dr.Execute()

// check error, get response

Todos

  • Unit testing
  • Implement encoded username username*
  • Logging and debugging message

Documentation

Overview

Package digestAuthClient implements HTTP digest auth for AMT. It is based on https://github.com/xinsnake/go-http-digest-auth-client, but was adapted for AMT usage: makes timeouts configurable, makes TLS cert verification configurable, closes connections...

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DigestRequest

type DigestRequest struct {
	Body       string
	Method     string
	Password   string
	URI        string
	Username   string
	Timeout    time.Duration
	SkipCert   bool
	CaCertData []byte
	Auth       *authorization
	Wa         *wwwAuthenticate
}

DigestRequest describes a HTTP digest auth request

func NewRequest

func NewRequest(username string, password string, method string, uri string, body string, timeout time.Duration, skipVerify bool, caCertData []byte) DigestRequest

NewRequest returns a new DigestRequest

func (*DigestRequest) Execute

func (dr *DigestRequest) Execute() (resp *http.Response, err error)

Execute executes as DigestRequest

func (*DigestRequest) UpdateRequest

func (dr *DigestRequest) UpdateRequest(username string,
	password string, method string, uri string, body string, timeout time.Duration, skipVerify bool, caCertData []byte) *DigestRequest

UpdateRequest updates an existing DigestRequest

Jump to

Keyboard shortcuts

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