OY
Size: a a a
OY
А
package main
import "net"
import "fmt"
import "bufio"
import "strings" // требуется только ниже для обработки примера
func setServer() net.Conn {
fmt.Println("Launching server...")
// Устанавливаем прослушивание порта
ln, _ := net.Listen("tcp", ":8081")
// Открываем порт
conn, _ := ln.Accept()
return conn
}
func main() {
var conn = setServer()
// Запускаем цикл
for {
// Будем прослушивать все сообщения разделенные \n
message, _ := bufio.NewReader(conn).ReadString('\n')
// Распечатываем полученое сообщение
fmt.Print("Message Received:", string(message))
// Процесс выборки для полученной строки
newmessage := strings.ToUpper(message)
// Отправить новую строку обратно клиенту
conn.Write([]byte(newmessage + "\n"))
}
}
А
DP
VL
DP
VL
DP
ПК
ПК
DP
а
DP
DP
KD
DP
error type behaviour was changed: one error could be derived from another with fmt.Errorf() method using %w format specifier.error values should not be compared directly but with errors.Is() method.error should not be created dynamically from scratch but by the wrapping the static (package-level) error.IS