您好
首先抱歉我的英语不好。
我正在学习使用unity(5.3.4p3),node.sj和socket.io包(版本:1。0。2(2014年9月24日))学习构建多人游戏的起点。
我是从Unity统一资产商店下载的。并导入整个包。
3 错误在没有任何更改的情况下发生:
** 1)** Assets / SocketIO / WebsocketSharp / Ext.cs(84,81):错误CS1729:Type' System.IO.Compression.Deflatestream不包含带&#39的构造函数; 3'参数
** 2)**是(118,83)
中的相同错误** 3)** Assets / SocketIO / WebsocketSharp / Net / HttpConnection.cs(96,16):错误CS1061Ttype' WebSocketSharp.Net.Security.SslSteram'不包含' AuthenticateAsSrver'的定义没有扩展方法' AutenthenteAsServer'类型' WebSocketSharp.Net.Security.SslStream'可以找到(你错过了使用指令或汇编参考吗?)
(请注意,有2个警告不是问题。问题是这3个错误,我可以在不修复它的情况下检查我的游戏。)
对于1和2,我检查Ext.cs脚本文件。似乎函数有2个构造函数,其中一个有3个参数。 看起来很正常。但错误说不然!! ;
这是一行:
using(var ds = new DeflateStream(output,CompressionMode.Compress,true)){
以及整个部分:
private static MemoryStream compress (this Stream stream)
{
var output = new MemoryStream ();
if (stream.Length == 0)
return output;
stream.Position = 0;
using (var ds = new DeflateStream (output, CompressionMode.Compress, true)) {
stream.CopyTo (ds);
ds.Close (); // "BFINAL" set to 1.
output.Position = 0;
return output;
}
}
我试图删除第三个参数(" true"一个bool值)。将它改为2参数形式。错误消失了。但是在EndPointListener.cs中出现另一个错误。我认为没用,会产生更多错误。
对于错误3,似乎' AutenticationAsServer'存在并且是正常的...但错误消息再次说明了。
错误行是:
sslStream.AuthenticateAsServer (listener.Certificate);
功能:
public HttpConnection (Socket socket, EndPointListener listener)
{
_socket = socket;
_listener = listener;
_secure = listener.IsSecure;
var netStream = new NetworkStream (socket, false);
if (_secure) {
var sslStream = new SslStream (netStream, false);
sslStream.AuthenticateAsServer (listener.Certificate);
_stream = sslStream;
}
else {
_stream = netStream;
}
_sync = new object ();
_timeout = 90000; // 90k ms for first request, 15k ms from then on.
_timer = new Timer (onTimeout, this, Timeout.Infinite, Timeout.Infinite);
init ();
}
这是HttpConnection.cs的第一个功能
我试着评论这一行。错误消失了......但它可能会有后果。
我不知道有什么不对。如果可以的话请帮助......
答案 0 :(得分:0)
您是否创建了另一个名为“ socket”的类?检查您是否在库中命名了其他类。