aboutsummaryrefslogtreecommitdiff
path: root/weed
diff options
context:
space:
mode:
Diffstat (limited to 'weed')
-rw-r--r--weed/operation/assign_file_id.go20
-rw-r--r--weed/util/http_util.go25
-rw-r--r--weed/util/http_util_test.go19
3 files changed, 14 insertions, 50 deletions
diff --git a/weed/operation/assign_file_id.go b/weed/operation/assign_file_id.go
index 3f3bb13e0..b67d8b708 100644
--- a/weed/operation/assign_file_id.go
+++ b/weed/operation/assign_file_id.go
@@ -1,17 +1,13 @@
package operation
import (
- "bytes"
"context"
"fmt"
-
- "github.com/valyala/fasthttp"
- "google.golang.org/grpc"
-
- "github.com/chrislusf/seaweedfs/weed/glog"
"github.com/chrislusf/seaweedfs/weed/pb/master_pb"
"github.com/chrislusf/seaweedfs/weed/security"
"github.com/chrislusf/seaweedfs/weed/util"
+ "google.golang.org/grpc"
+ "strings"
)
type VolumeAssignRequest struct {
@@ -93,16 +89,12 @@ func Assign(server string, grpcDialOption grpc.DialOption, primaryRequest *Volum
func LookupJwt(master string, fileId string) security.EncodedJwt {
tokenStr := ""
- lookupUrl := fmt.Sprintf("http://%s/dir/lookup?fileId=%s", master, fileId)
- err := util.Head(lookupUrl, func(header fasthttp.ResponseHeader) {
- bearer := header.Peek("Authorization")
- if len(bearer) > 7 && string(bytes.ToUpper(bearer[0:6])) == "BEARER" {
- tokenStr = string(bearer[7:])
+ if h, e := util.Head(fmt.Sprintf("http://%s/dir/lookup?fileId=%s", master, fileId)); e == nil {
+ bearer := h.Get("Authorization")
+ if len(bearer) > 7 && strings.ToUpper(bearer[0:6]) == "BEARER" {
+ tokenStr = bearer[7:]
}
- })
- if err != nil {
- glog.V(0).Infof("failed to lookup jwt %s: %v", lookupUrl, err)
}
return security.EncodedJwt(tokenStr)
diff --git a/weed/util/http_util.go b/weed/util/http_util.go
index b74e30ad7..08007a038 100644
--- a/weed/util/http_util.go
+++ b/weed/util/http_util.go
@@ -12,8 +12,6 @@ import (
"net/url"
"strings"
- "github.com/valyala/fasthttp"
-
"github.com/chrislusf/seaweedfs/weed/glog"
)
@@ -85,23 +83,16 @@ func Get(url string) ([]byte, error) {
return b, nil
}
-func Head(url string, fn func(header fasthttp.ResponseHeader)) error {
- req := fasthttp.AcquireRequest()
- resp := fasthttp.AcquireResponse()
- defer fasthttp.ReleaseRequest(req) // <- do not forget to release
- defer fasthttp.ReleaseResponse(resp) // <- do not forget to release
-
- c := fasthttp.Client{}
- req.SetRequestURI(url)
- req.Header.SetMethod(fasthttp.MethodHead)
- if err := c.Do(req, resp); err != nil {
- return err
+func Head(url string) (http.Header, error) {
+ r, err := client.Head(url)
+ if err != nil {
+ return nil, err
}
- if resp.StatusCode() >= 400 {
- return fmt.Errorf("%s: %d", url, resp.StatusCode())
+ defer r.Body.Close()
+ if r.StatusCode >= 400 {
+ return nil, fmt.Errorf("%s: %s", url, r.Status)
}
- fn(resp.Header)
- return nil
+ return r.Header, nil
}
func Delete(url string, jwt string) error {
diff --git a/weed/util/http_util_test.go b/weed/util/http_util_test.go
deleted file mode 100644
index a8a1172d2..000000000
--- a/weed/util/http_util_test.go
+++ /dev/null
@@ -1,19 +0,0 @@
-package util
-
-import (
- "testing"
-
- "github.com/valyala/fasthttp"
-)
-
-func TestFasthttpClientHead(t *testing.T) {
- err := Head("https://www.google.com", func(header fasthttp.ResponseHeader) {
- header.VisitAll(func(key, value []byte) {
- println(string(key) + ": " + string(value))
- })
- })
- if err != nil {
- println(err.Error())
- }
-
-}