接上一篇博客吧! 上一篇博客说了很多的概念性的东西,那么从这一节开始我们便开始来实际操作一下啦,比较作为程序猿的我们理论学的再多,不如实际去撸一波代码,哈哈哈~
这里我不会花费很多时间去讲解一下关于Socket通信的一些同步的API和内容,因为说白了,在商业级别的游戏中,基本没有人会用这些东西的.因为也很简单,自己百度一波就出来了.而且大家看这一节的标题想必就知道了,这一节主要是来介绍我们异步连接到我们的服务器有关知识的哈.
本节所展示的代码均是采用异步的操作方式的,如有不明白什么是异步的话,自行移步百度解决.
using UnityEngine;
using System.Net.Sockets;
using System;
public class TestSocket : MonoBehaviour
{
private const string IP = "127.0.0.1";
private const int Port = 8888;
//定义套接字
private Socket socket;
//发起连接
public void Connetion()
{
//Socket
socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
//Connect
socket.BeginConnect(IP, Port, ConnectCallback, socket);
}
//Connect回调
public void ConnectCallback(IAsyncResult ar)
{
try
{
Socket socket = (Socket) ar.AsyncState;
socket.EndConnect(ar);
Debug.Log("Socket Connect Succ ");
}
catch (SocketException ex)
{
Debug.LogError("Socket Connect fail" + ex.ToString());
}
}
}
上面的代码很简单,就是客户端声明一个socket 然后绑定一下IP和端口,调用异步连接的方法向服务端发起连接,告诉服务器我要请求连接了…
不过,我们现在好像没有服务器唉,别着急,下一节我们自己来实现一个简单的服务器.