Функция net.Dial
Функция net.Dial создает сетевое соединение с указанным адресом.
Первый параметр принимает строку с типом сети, например, "tcp",
"udp", "unix". Второй параметр принимает строку с адресом,
например, "example.com:80" или "127.0.0.1:8080".
Функция возвращает интерфейс net.Conn и ошибку.
Синтаксис
conn, err := net.Dial(network, address)
Пример
Давайте установим TCP-соединение с сайтом "example.com"
на порт 80:
package main
import (
"fmt"
"net"
)
func main() {
conn, err := net.Dial("tcp", "example.com:80")
if err != nil {
fmt.Println("Error:", err)
return
}
defer conn.Close()
fmt.Println("Connected to", conn.RemoteAddr())
}
Результат выполнения кода:
"Connected to 93.184.216.34:80"
Пример
Давайте попробуем подключиться к несуществующему адресу:
package main
import (
"fmt"
"net"
)
func main() {
conn, err := net.Dial("tcp", "invalid.example.com:80")
if err != nil {
fmt.Println("Error:", err)
return
}
defer conn.Close()
fmt.Println("Connected")
}
Результат выполнения кода:
"Error: dial tcp: lookup invalid.example.com: no such host"
Пример
Давайте установим UDP-соединение с локальным сервером:
package main
import (
"fmt"
"net"
)
func main() {
conn, err := net.Dial("udp", "127.0.0.1:8080")
if err != nil {
fmt.Println("Error:", err)
return
}
defer conn.Close()
fmt.Println("UDP connection established")
}
Результат выполнения кода:
"UDP connection established"
Смотрите также
-
функцию
net.DialTimeout,
которая устанавливает соединение с таймаутом -
функцию
net.Dialer,
которая предоставляет расширенные настройки соединения -
функцию
net.Listen,
которая создает сервер для прослушивания соединений -
интерфейс
net.Conn,
который представляет сетевое соединение