mirror of https://github.com/Xhofe/alist
				
				
				
			
		
			
				
	
	
		
			35 lines
		
	
	
		
			684 B
		
	
	
	
		
			Go
		
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			684 B
		
	
	
	
		
			Go
		
	
	
| package gowebdav
 | |
| 
 | |
| import (
 | |
| 	"encoding/base64"
 | |
| 	"net/http"
 | |
| )
 | |
| 
 | |
| // BasicAuth structure holds our credentials
 | |
| type BasicAuth struct {
 | |
| 	user string
 | |
| 	pw   string
 | |
| }
 | |
| 
 | |
| // Type identifies the BasicAuthenticator
 | |
| func (b *BasicAuth) Type() string {
 | |
| 	return "BasicAuth"
 | |
| }
 | |
| 
 | |
| // User holds the BasicAuth username
 | |
| func (b *BasicAuth) User() string {
 | |
| 	return b.user
 | |
| }
 | |
| 
 | |
| // Pass holds the BasicAuth password
 | |
| func (b *BasicAuth) Pass() string {
 | |
| 	return b.pw
 | |
| }
 | |
| 
 | |
| // Authorize the current request
 | |
| func (b *BasicAuth) Authorize(req *http.Request, method string, path string) {
 | |
| 	a := b.user + ":" + b.pw
 | |
| 	auth := "Basic " + base64.StdEncoding.EncodeToString([]byte(a))
 | |
| 	req.Header.Set("Authorization", auth)
 | |
| }
 |