reprogl

Форк
0
/
common.go 
30 строк · 469.0 Байт
1
package container
2

3
import (
4
	"crypto/md5"
5
	"fmt"
6
	"net/http"
7
	"strings"
8
)
9

10
func RealRemoteAddress(r *http.Request) string {
11
	addr := r.Header.Get("X-Real-IP")
12
	if addr == "" {
13
		addr = r.Header.Get("X-Forwarded-For")
14
		if addr == "" {
15
			addr = r.RemoteAddr
16
		}
17
	}
18

19
	return addr
20
}
21

22
func IsCDN(r *http.Request) bool {
23
	return strings.Contains(r.Header.Get("Via"), "BunnyCDN")
24
}
25

26
func MD5(s string) string {
27
	hash := md5.Sum([]byte(s))
28

29
	return fmt.Sprintf("%x", hash)
30
}
31

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.