关闭

golang使用net库实现一个简单的服务端和客户端通信

标签: net
79人阅读 评论(0) 收藏 举报
分类:

golang使用net库实现一个简单的服务端和客户端通信

服务端代码:
服务端启动监听,默认127.0.0.1, 设置端口9090

package main

import (
    "fmt"
    "runtime"
    "net"
    "os"
)

func recvFile(conn net.Conn) {
    fmt.Println("new connection: ", conn.RemoteAddr())
    defer conn.Close()
}

func main() {
    var (
        port = "9090"
        remote = ":" + port
    )
    fmt.Println(remote)

    lisn, err := net.Listen("tcp", remote)
        defer lisn.Close()

    if err != nil {
        fmt.Println("server listen failed!", err)
        os.Exit(-1)
    }

    for {
        conn, err := lisn.Accept()
        if err != nil {
            fmt.Println("client connect failed!", err)
            continue
        }

        go recvFile(conn)
    }
}

客户端代码:
客户端发起连接,目标ip127.0.0.1, 端口:9090

package main

import (
    "fmt"
    "net"
    "os"
    "runtime"
)

func main() {
    var (
        host   = "127.0.0.1"
        port   = "9090"
        remote = host + ":" + port
    )

    fmt.Println(remote)
    conn, err := net.Dial("tcp", remote)
    defer conn.Close()

    if err != nil {
        fmt.Println("connect server failed!.")
        os.Exit(-1)
        return
    }

    fmt.Println(0, "connect ok! sending file...")
}
0
0
查看评论

Go实战--实现一个简单的tcp服务端和客户端(The way to go)

生命不止,继续 go go go !!!之前介绍了go为我们提供的net/http包,很方便的创建一些api。今天就来点实战,写一个简单的tcp的服务端、客户端程序。按照国际惯例,还是先介绍一点点基础知识。* net.Listen* Listen announces on the local ne...
  • wangshubo1989
  • wangshubo1989
  • 2017-04-24 20:45
  • 7017

golang使用net/http实现一对客户端和服务器连接的例子

golang的net/http封装很强大,可惜网上的教程或者源码很少。这里简单实现了一对服务器和客户端的连接。 客户端代码如下: package main import ( "fmt" "io/ioutil" "net/http" &q...
  • su_sai
  • su_sai
  • 2016-04-18 00:58
  • 2019

Java中利用socket实现简单的服务端与客户端的通信(入门级)

Java编程中,要想要使用网络通信,就离不开Socket编程,在此对socket进行简单的介绍。首先声明,这是一个入门级的介绍,仅仅简单的实现了客户端向服务端发送数据,服务端正常的接收数据,当接收到特定的数据时,服务端和客户端都关闭,一个服务端对应一个客户端,不涉及多线程等内容,一切都是最简单最基础...
  • qq_25352981
  • qq_25352981
  • 2015-11-19 18:15
  • 4367

Java review--NIO实例:实现服务端和客户端的简单通信

package nio; import java.io.IOException; import java.net.InetSocketAddress; import java.net.ServerSocket; import java.nio.ByteBuffer; import java.nio...
  • successA
  • successA
  • 2016-07-30 16:58
  • 727

C# 编写WCF简单的服务端与客户端

学习链接:C# 编写WCF简单的服务端与客户端
  • u014467089
  • u014467089
  • 2016-08-30 16:21
  • 1089

Java中利用socket实现简单的服务端与客户端的通信(基础级)

在上一篇文章中,简单的介绍了java中入门级的socket编程,简单的实现了客户端像服务器端发送数据,服务器端将数据接收并显示在控制台,没有涉及多线程。上一篇文章的链接:Java中利用socket实现简单的服务端与客户端的通信(入门级) 这次,我们将上一节中的代码进行少许的更改,将服务器更改为多线程...
  • qq_25352981
  • qq_25352981
  • 2015-11-25 18:41
  • 1386

Netty实现客户端和服务端的通信

Netty是Apache团队的又一个优秀的Socket框架,它和mina是一个团队开发的,所以很多思想是相同的,接下来,我们就来实现客户端和服务端的双向通信。        首先,我们定义消息类型:       ...
  • lynnlovemin
  • lynnlovemin
  • 2017-05-23 09:31
  • 3573

Java实现服务器和客户端简单通信

Java中网络编程这一块有封装的类库,使用简单,了解原理可以教容易实现服务器和客户端的简单通信。在编程之前,首先要需要对TCP/IP协议有一定的了解,需要知道Socket套接字的作用以及用法,这个可以在API文档中去查看。两通讯实体之间通信需要掌握数据的传输方式,这里主要掌握java中IO流的使用。...
  • superxiaolong123
  • superxiaolong123
  • 2017-04-13 21:40
  • 1384

用ServerSocket类与Socket类实现客户端与服务端的交互

ServerSocket类,此类实现服务端的套接字,Socket类,此类实现客户端的套接字,而套接字就是两台机器间通信的端点,所以就用ServerSocket类和Socket类实现客户端与服务端的交互,下面先来查看ServerSocket类的api 看到构造方法,首先想到要使用要先new一个,然后...
  • Zero_zzq
  • Zero_zzq
  • 2017-04-09 22:58
  • 995

Netty简单示例----客户端与服务器通信

本例实现功能为客户端获取服务器的时间并显示,参考《Netty权威指南》一书,不过书中使用Netty5实现的,考虑到Netty已经下架5,本例子使用Netty4.1.6版本。 首先服务器端,包括TimeServer、TimeServerHandler两个类: TimeServerimport io...
  • wangshuang1631
  • wangshuang1631
  • 2017-06-08 11:14
  • 1688
    个人资料
    • 访问:718563次
    • 积分:8998
    • 等级:
    • 排名:第2503名
    • 原创:182篇
    • 转载:125篇
    • 译文:1篇
    • 评论:109条
    博客专栏
    初识Qt

    文章:43篇

    阅读:148242
    文章分类
    最新评论