Author | SHA1 | Message | Date |
---|---|---|---|
guzeng | 1810cc07d8 | 增加getall方法 | 2 years ago |
guzeng | 6945a1df44 | 删除无用方法 | 2 years ago |
guzeng | 9852f5c7e0 | redis操作改调用rpc | 2 years ago |
guzeng | f27b6fb983 | 增加mod | 3 years ago |
guzeng | e1611ccf47 | 修复缺失方法 | 3 years ago |
guzeng | edb26ff827 | 删除重复文件 | 3 years ago |
@ -0,0 +1,9 @@ | |||||
module git.tetele.net/tgo/site | |||||
go 1.14 | |||||
require ( | |||||
git.tetele.net/tgo/helper v0.1.0 // indirect | |||||
git.tetele.net/tgo/redisrpc v0.3.1 // indirect | |||||
golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e // indirect | |||||
) |
@ -0,0 +1,27 @@ | |||||
git.tetele.net/tgo/conf v0.25.0 h1:fopDch45xw/di5fLvvzwltFiGiXrilMobZwQNO678Wo= | |||||
git.tetele.net/tgo/conf v0.25.0/go.mod h1:DogEBvxG2fGdukpoobTVFE2b4Fd5OTE9FJ3Xetyn47E= | |||||
git.tetele.net/tgo/helper v0.1.0 h1:ZdsBXUWX3+22ZzHTZRldBfBsQwu+CwUH8qScUvpgimE= | |||||
git.tetele.net/tgo/helper v0.1.0/go.mod h1:shYQE/hvMy3fOE8JXKGxvywOXiz3M5Nw4e+u7HR8+NY= | |||||
git.tetele.net/tgo/redisrpc v0.3.1 h1:H/5xPeC83noJ7mlBckDXkDxlMS1uCBX+orhf2x6Tp9w= | |||||
git.tetele.net/tgo/redisrpc v0.3.1/go.mod h1:cNefHGXYxTY9sliaKKNKVZiZBtY1V26ZtwlTZ6uXVtY= | |||||
github.com/chai2010/protorpc v1.0.0 h1:aJ45G9sl1utSKo35EqnBSTs5jqTpdJDJAuZMMYPAtFo= | |||||
github.com/chai2010/protorpc v1.0.0/go.mod h1:woR3WwjaQDqFjlzdVsFEKiK5Ur12QL8mYxVPjfr5z54= | |||||
github.com/golang/protobuf v1.0.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= | |||||
github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= | |||||
github.com/golang/protobuf v1.5.2 h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw= | |||||
github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= | |||||
github.com/golang/snappy v0.0.0-20170215233205-553a64147049 h1:K9KHZbXKpGydfDN0aZrsoHpLJlZsBrGMFWbgLDGnPZk= | |||||
github.com/golang/snappy v0.0.0-20170215233205-553a64147049/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= | |||||
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= | |||||
golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e h1:gsTQYXdTw2Gq7RBsWvlQ91b+aEQ6bXFUngBGuR8sPpI= | |||||
golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= | |||||
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= | |||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= | |||||
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= | |||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= | |||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= | |||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= | |||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= | |||||
google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= | |||||
google.golang.org/protobuf v1.26.0 h1:bxAC2xTBsZGibn2RTntX0oH50xLsqy1OxA9tTL3p/lk= | |||||
google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= |
@ -1,63 +0,0 @@ | |||||
package site | |||||
import ( | |||||
"net/http" | |||||
"strings" | |||||
) | |||||
/** | |||||
* 取访问主机名 | |||||
*/ | |||||
func GetHost(req *http.Request) string { | |||||
var hostlist []string = req.Header.Values("X-Forwarded-Host") | |||||
var host string | |||||
if len(hostlist) > 1 { | |||||
host = hostlist[len(hostlist)-1] //取最后一次转发的 | |||||
} else if len(hostlist) == 1 { | |||||
host = hostlist[0] | |||||
} else { | |||||
host = "" | |||||
} | |||||
if host != "" { | |||||
hosts := strings.Split(host, ",") | |||||
host = strings.Trim(hosts[len(hosts)-1], " ") | |||||
} | |||||
if host == "" { | |||||
host = req.Host | |||||
} | |||||
return host | |||||
} | |||||
/** | |||||
* 取域名 | |||||
*/ | |||||
func GetDomain(req *http.Request) string { | |||||
scheme := "http://" | |||||
if req.TLS != nil { | |||||
scheme = "https://" | |||||
} | |||||
if strings.Contains(req.Referer(), "https://") { | |||||
scheme = "https://" | |||||
} | |||||
var host string = GetHost(req) | |||||
host = strings.Split(host, ":")[0] | |||||
var w strings.Builder | |||||
w.WriteString(scheme) | |||||
w.WriteString(host) | |||||
return w.String() | |||||
} | |||||
func SetHeader(w http.ResponseWriter, resp *http.Request) { | |||||
w.Header().Set("Access-Control-Allow-Origin", "*") //允许访问所有域 | |||||
w.Header().Add("Access-Control-Allow-Headers", "Content-Type,x-csrf-token,x-requested-with,token") //header的类型 | |||||
w.Header().Set("Access-Control-Allow-Methods", "POST,GET,OPTIONS") | |||||
w.Header().Set("content-type", "application/json") //返回数据格式是json | |||||
// w.Header().Set("Content-Length", resp.Header.Get("Content-Length")) | |||||
} |