前言
我们完成服务端的搭建以及数据库的连接后,就要实现客户端对于服务端的连接功能
3.1、客户端连接服务器
1,首先创建一个客户端连接脚本,在脚本中连接服务器,同样需要使用Socket
来设计连接方式
2,在脚本中首先需要使用构造方法获取服务器地址ip
和端口号port
3,对于连接协议、数据传输方式等等按照需要进行选择配置
4,然后定义一个方法,通过Socket
中的Connect()
方法来连接到指定的服务器端
using System.Collections;
using System.Collections.Generic;
using System.Net;
using System.Net.Sockets;
using UnityEngine;
public class ConnServer
{
private Socket socket;
private IPEndPoint ipe;
//ip地址和端口号,需要和服务器端保持一致
private string ip;
private int port;
public ConnServer(string _ip,int _port)
{
this.ip = _ip;
this.port = _port;
}
public Socket conn()
{
socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
ipe = new IPEndPoint(IPAddress.Parse(ip), port);
//Connect()为连接服务器端方法
socket.Connect(ipe);
return socket;
}
}
通过代码可以看出使用Socket
无论是客户端还是服务端创建连接基本都是一样的,两者连接的重要参数就是IP
地址和端口port
,而具体的连接方式、协议等Socket已经帮助我们封装好了,我们只需要调用方法即可
3.2、测试连接是否成功
首先创建运行测试脚本Test,将脚本附加在场景物体中,然后编写测试脚本:
通过监听键盘按钮空格键来触发服务器连接事件:
using System.Collections;
using System.Collections.Generic;
using System.Net.Sockets;
using UnityEngine;
public class Test : MonoBehaviour
{
ConnServer connServer;
void Update()
{
if(Input.GetKeyDown(KeyCode.Space))
{
connServer = new ConnServer("127.0.0.1", 30000);
Socket socket= connServer.conn();
}
}
}
在正式开始前需要先启动之前搭建的服务器,然后再执行Unity中的程序,如果日志中成功打印出“连接服务器成功”则表示服务器连接成功。
总结
Unity客户端连接服务器,基本结构与服务器的搭建相差无几,需要注意的是IP地址和端口号需要保持一致