huawei

package
v3.6.4 Latest Latest
Warning

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

Go to latest
Published: Nov 29, 2021 License: AGPL-3.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
const (
	BasicDateFormat     = "20060102T150405Z"
	Algorithm           = "SDK-HMAC-SHA256"
	HeaderXDate         = "X-Sdk-Date"
	HeaderHost          = "host"
	HeaderAuthorization = "Authorization"
	HeaderContentSha256 = "X-Sdk-Content-Sha256"
)
View Source
const Name = `HuaWei`

Variables

This section is empty.

Functions

func AuthHeaderValue

func AuthHeaderValue(signature, accessKey string, signedHeaders []string) string

Get the finalized value for the "Authorization" header. The signature parameter is the output from SignStringToSign

func CanonicalHeaders

func CanonicalHeaders(r *http.Request, signerHeaders []string) string

CanonicalHeaders

func CanonicalQueryString

func CanonicalQueryString(r *http.Request) string

CanonicalQueryString

func CanonicalRequest

func CanonicalRequest(r *http.Request, signedHeaders []string) (string, error)

Build a CanonicalRequest from a regular request string

CanonicalRequest =

HTTPRequestMethod + '\n' +
CanonicalURI + '\n' +
CanonicalQueryString + '\n' +
CanonicalHeaders + '\n' +
SignedHeaders + '\n' +
HexEncode(Hash(RequestPayload))

func CanonicalURI

func CanonicalURI(r *http.Request) string

CanonicalURI returns request uri

func HexEncodeSHA256Hash

func HexEncodeSHA256Hash(body []byte) (string, error)

HexEncodeSHA256Hash returns hexcode of sha256

func New

func New() interfaces.Updater

func RequestPayload

func RequestPayload(r *http.Request) ([]byte, error)

RequestPayload

func SignStringToSign

func SignStringToSign(stringToSign string, signingKey []byte) (string, error)

Create the HWS Signature.

func SignedHeaders

func SignedHeaders(r *http.Request) []string

SignedHeaders

func StringToSign

func StringToSign(canonicalRequest string, t time.Time) (string, error)

Create a "String to Sign".

Types

type Huaweicloud

type Huaweicloud struct {
	Domains []*dnsdomain.Domain
	TTL     int
	// contains filtered or unexported fields
}

https://support.huaweicloud.com/api-dns/dns_api_64001.html Huaweicloud Huaweicloud

func (*Huaweicloud) ConfigItems

func (*Huaweicloud) ConfigItems() echo.KVList

func (*Huaweicloud) Description

func (*Huaweicloud) Description() string

func (*Huaweicloud) Init

func (hw *Huaweicloud) Init(settings echo.H, domains []*dnsdomain.Domain) error

Init 初始化

func (*Huaweicloud) LineTypeURL

func (*Huaweicloud) LineTypeURL() string

func (*Huaweicloud) Name

func (*Huaweicloud) Name() string

func (*Huaweicloud) SignUpURL

func (*Huaweicloud) SignUpURL() string

func (*Huaweicloud) Support added in v3.6.1

func (*Huaweicloud) Support() dnsdomain.Support

func (*Huaweicloud) Update

func (hw *Huaweicloud) Update(ctx context.Context, recordType string, ipAddr string) error

type HuaweicloudRecordsResp

type HuaweicloudRecordsResp struct {
	Recordsets []HuaweicloudRecordsets
}

HuaweicloudRecordsResp 记录返回结果

type HuaweicloudRecordsets

type HuaweicloudRecordsets struct {
	ID      string   `json:"id"`
	Name    string   `json:"name"`
	ZoneID  string   `json:"zone_id"`
	Status  string   `json:"status"`
	Type    string   `json:"type"`
	TTL     int      `json:"ttl"`
	Records []string `json:"records"`
	Line    string   `json:"line,omitempty"`
}

HuaweicloudRecordsets 记录

type HuaweicloudZonesResp

type HuaweicloudZonesResp struct {
	Zones []struct {
		ID   string
		Name string
	}
}

HuaweicloudZonesResp zones response

type Signer

type Signer struct {
	Key    string
	Secret string
}

Signature HWS meta

func (*Signer) Sign

func (s *Signer) Sign(r *http.Request) error

SignRequest set Authorization header

Jump to

Keyboard shortcuts

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