123456789101112131415161718192021222324252627282930313233343536373839404142 |
- package main
- import (
- "fmt"
- "net/http"
- "strings"
- "time"
- )
- func okHandler(w http.ResponseWriter, r *http.Request) {
- w.WriteHeader(http.StatusOK)
- fmt.Fprintln(w, "OK")
- }
- func infoHandler(w http.ResponseWriter, r *http.Request) {
- studentInfo := "ФИО: Джурич Михаил Горанович, Номер группы: 712"
- fmt.Fprintln(w, studentInfo)
- }
- func statusHandler(w http.ResponseWriter, r *http.Request) {
- ip := r.RemoteAddr
- var maskedIP string
- fmt.Sscanf(ip, "%[^:]:%*s", &maskedIP)
- ipParts := strings.Split(maskedIP, ".")
- if len(ipParts) == 4 {
- maskedIP = fmt.Sprintf("%s.***.***.%s", ipParts[0], ipParts[3])
- }
- currentTime := time.Now().Format("2006-01-02 3:4:5 pm")
- response := fmt.Sprintf("IP-адрес: %s\nФИО: Джурич Михаил Горанович\nТекущее время: %s", maskedIP, currentTime)
- fmt.Fprintln(w, response)
- }
- func main() {
- http.HandleFunc("/ok", okHandler)
- http.HandleFunc("/info", infoHandler)
- http.HandleFunc("/status", statusHandler)
- fmt.Println("Сервер запущен на порту 8080...")
- if err := http.ListenAndServe(":8080", nil); err != nil {
- fmt.Println("Ошибка запуска сервера:", err)
- }
- }
|