31 lines
776 B
Go
31 lines
776 B
Go
package service
|
|
|
|
import (
|
|
"api/api/network/model/resp"
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
// NetWorkService 网络服务
|
|
type NetWorkService struct{}
|
|
|
|
func (NetWorkService) GetHeaders(c *gin.Context) resp.HeadersResp {
|
|
// 获取所有的请求头
|
|
request := c.Request
|
|
headers := request.Header
|
|
clientIP := c.ClientIP()
|
|
|
|
// 将请求头转换为 map[string]string
|
|
headersMap := make(map[string]string)
|
|
for key, value := range headers {
|
|
headersMap[key] = value[0] // 注意,这里假设每个键只有一个值,你可以根据实际情况修改逻辑
|
|
}
|
|
headersMap["platform"] = headers.Get("Sec-CH-UA-Platform")
|
|
headersMap["model"] = headers.Get("Sec-CH-UA-Model")
|
|
|
|
result := resp.HeadersResp{}
|
|
result.IP = clientIP
|
|
result.Headers = headersMap
|
|
|
|
return result
|
|
}
|