本人在学习的b站siki老师的视频中遇到不少问题,所以就学到哪记录到哪吧。
地址
分享一下我学习的siki课程在B站的地址:
here
版本
使用的photon server版本:
Photon-OnPremise-Server-SDK_v4-0-29-11263
(这个版本从2016年用到现在,官方似乎一直没更新)
使用的vs版本:vs2017
问题
遇到问题1:
在学习P159 第172课时,由于photon server版本原因,需要把siki老师的服务器端C#代码ChatPeer.cs的ChatPeer继承的类从PeerBase类改成ClientPeer类(也可以改成Peer类,其中Peer类继承了ClientPeer类,ClientPeer类继承了PeerBase类,但PeerBase抽象类没有构造函数)。
改成ClientPeer类后,ClientPeer类的构造函数只有一个 :
public ChatPeer(InitRequest initRequest) : base(initRequest)
{
}
构造函数相应的改一下,其他的和siki老师讲的没啥区别,这里就不再赘述了。
遇到问题2:
在学习P160 第173课时,siki老师最后演示失败了,主要原因是端口号4530没改,在PhotonServer.config源码中:
<TCPListener
IPAddress="0.0.0.0"
Port="4530"
OverrideApplication="Master"
PolicyFile="Policy\assets\socket-policy.xml"
InactivityTimeout="10000"
>
</TCPListener>
很明显端口号4530被Master这个application占用了,解决办法之一就是重新启用一个端口:
<TCPListener
IPAddress="0.0.0.0"
Port="4540"
OverrideApplication="ChatServer"
PolicyFile="Policy\assets\socket-policy.xml"
InactivityTimeout="10000"
>
</TCPListener>
然后在客户端c#代码Program.cs中把客户端连接服务器端的执行语句的端口号也改成4540:
peer.Connect(“127.0.0.1:4540”, “ChatServer”);
这样就解决问题了。
ps:端口号这个问题没解决,后边学到会P163 第176课会出错!!!
可能会像我这样:
我就是因为踩着这个大坑学到第176课,返回前边捣鼓了半天才看出来。这里siki老师有点小小的不用心,在下一节课中直接用之前没这个bug的代码搪塞过去了。
未完待续。。。