|
|
@@ -15,11 +15,11 @@ var UDPServerIgnoreResponse = errors.New("忽略响应")
|
|
|
|
|
|
// UDPServerRequestCallback 请求回调
|
|
|
// 参数:
|
|
|
-// data: 请求数据
|
|
|
+// data: 请求数据,大端,可以用DataReader解析
|
|
|
// 返回值:
|
|
|
-// responseBytes: 响应数据包
|
|
|
-// err: 是否存在错误,如果是UDPServerIgnoreResponse,则忽略,不进行响应
|
|
|
-type UDPServerRequestCallback func(data []byte) (responseBytes []byte, err error)
|
|
|
+// 响应数据: 大端,可以用DataWriter写入buffer再返回
|
|
|
+// 是否存在错误: 如果是UDPServerIgnoreResponse,则忽略,不进行响应
|
|
|
+type UDPServerRequestCallback func(data []byte) ([]byte, error)
|
|
|
|
|
|
type UDPServerOption func(opt *UDPServerOptions)
|
|
|
|
|
|
@@ -128,7 +128,7 @@ func (server *UDPServer) readRequest() {
|
|
|
return
|
|
|
default:
|
|
|
// 读取任意客户端发来的请求,超时就是没有客户端发出请求
|
|
|
- data, rAddr, err := readUDP(server.conn, server.options.receiveBufferSize, WithReadDeadline(server.options.readTimeout))
|
|
|
+ data, rAddr, err := readUDP(server.conn, server.options.receiveBufferSize, withReadDeadline(server.options.readTimeout))
|
|
|
if err != nil {
|
|
|
fmt.Println(err)
|
|
|
continue
|
|
|
@@ -173,7 +173,7 @@ func (server *UDPServer) dealRequest(data []byte, rAddr *net.UDPAddr, doneChan c
|
|
|
}
|
|
|
|
|
|
func (server *UDPServer) response(conn *net.UDPConn, rAddr *net.UDPAddr, data []byte) {
|
|
|
- err := writeUDPWithRemoteAddr(conn, rAddr, data, WithWriteDeadline(server.options.writeTimeout))
|
|
|
+ err := writeUDPWithRemoteAddr(conn, rAddr, data, withWriteDeadline(server.options.writeTimeout))
|
|
|
if err != nil {
|
|
|
fmt.Println("Response Error:", err)
|
|
|
return
|