2016-07-16 78 views
1

我的操作系统是Windows 10版本10586,node.js是版本4.4.5。有关Node.js中原始套接字的一些问题

当我使用该模块原始套接字遵循本页面 https://github.com/stephenwvickers/node-raw-socket

的例子。当这样的运行代码:

var raw = require ("raw-socket"); 
var socket = raw.createSocket ({protocol: raw.Protocol.None}); 

我得到了以下错误:

C:\Users\KEEY\node_modules\raw-socket\index.js:47 
    this.wrap = new raw.SocketWrap (
       ^

Error: ��һ�ַ���Ȩ�޲������ķ�ʽ����һ�������׽��ֵij��ԡ� 


at Error (native) 
at new Socket (C:\Users\KEEY\node_modules\raw-socket\index.js:47:14) 
at Object.exports.createSocket (C:\Users\KEEY\node_modules\raw-socket\index.js:202:9) 
at Object.<anonymous> (C:\Users\KEEY\Desktop\node\raw-socket\demo.js:2:18) 
at Module._compile (module.js:409:26) 
at Object.Module._extensions..js (module.js:416:10) 
at Module.load (module.js:343:32) 
at Function.Module._load (module.js:300:12) 
at Function.Module.runMain (module.js:441:10) 
at startup (node.js:139:18) 
[Finished in 0.2s with exit code 1] 

如何解决它?

+0

您需要为您的平台和版本的节点编译模块。 –

+0

@DanD。我在“node_modules”文件夹下运行“npm install”,但没有帮助 –

回答

1

感谢大家的帮助。 我的电子邮件斯蒂芬·维克斯,模块原始套接字的作者,问题的根源在于

Stephen Vickers: 
    It looks like you don't have permissions to open raw sockets on that platform. 

然后我运行它以管理员身份,它的作品! 谢谢Stephen Vickers

0

试试这个

var socket = raw.createSocket ({ 
    protocol: raw.Protocol.None, 
    socketOption: raw.SocketOption.IPV6_HDRINCL 
}); 
+0

它不起作用。我得到了同样的错误。 –