Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我的HTML页面如何在客户端访问socket.io?_Html_Node.js_Linux_Socket.io - Fatal编程技术网

我的HTML页面如何在客户端访问socket.io?

我的HTML页面如何在客户端访问socket.io?,html,node.js,linux,socket.io,Html,Node.js,Linux,Socket.io,我正在做socket.io聊天教程,到目前为止一切都正常。但我不明白客户端是如何使用socket.io代码的: <!-- Load socket.io client-side --> <script src="/socket.io/socket.io.js"></script> <script src="https://code.jquery.com/jquery-1.11.1.js"></script> <script>

我正在做socket.io聊天教程,到目前为止一切都正常。但我不明白客户端是如何使用socket.io代码的:

<!-- Load socket.io client-side -->
<script src="/socket.io/socket.io.js"></script>
<script src="https://code.jquery.com/jquery-1.11.1.js"></script>
<script>

    $(function (){

        var socket = io();

        $('form').submit(function(){
            socket.emit('chat message', $('#m').val());
            $('#m').val('');
            return false;
        });

        socket.on('chat message', function(msg){
            $('#messages').append($('<li>').text(msg));
        });

    });
所以它是从/socket.io/socket.io.js访问它的,但我的文件夹中没有。我不知道HTML网页是如何访问socket.io.js文件的。不知道该怎么问这个问题。这个.js文件在哪里

<script src="/socket.io/socket.io.js"></script>
在上面的代码中,3000是服务器运行的端口,192.168.0.103将替换为您的本地ip地址。 希望这会有帮助

在上面的代码中,3000是服务器运行的端口,192.168.0.103将替换为您的本地ip地址。
希望这会有帮助

您是否正在学习有关的教程?有一句话是这样说的:在开发过程中,socket.io会自动为我们的客户机提供服务,我们将看到,所以现在我们只需要安装一个模块。因此,socket.io似乎为路径/socket.io/socket.io.js安装了一个处理程序。我没有使用socket.io的经验,但我想在生产环境中为脚本提供服务是您的责任。是的,我读过这一部分,但我仍然对处理程序以及如何或在何处访问.js文件感到困惑。是的,这就是教程。如果我没有弄错的话,在socket.io/lib/index.js.的第101行中处理客户端脚本。您是否遵循上的教程?有一句话是这样说的:在开发过程中,socket.io会自动为我们的客户机提供服务,我们将看到,所以现在我们只需要安装一个模块。因此,socket.io似乎为路径/socket.io/socket.io.js安装了一个处理程序。我没有使用socket.io的经验,但我想在生产环境中为脚本提供服务是您的责任。是的,我读过这一部分,但我仍然对处理程序以及如何或在何处访问.js文件感到困惑。是的,这就是教程。如果我没有弄错的话,在socket.io/lib/index.js的第101行中处理客户端脚本:。上面的答案是用于连接客户端到服务器,如果客户端文件由不同的服务器提供,假设您的index.html位于apache服务器上,而您的节点服务器运行在不同的地址。如果您的文件仅由节点服务器提供服务,则不必指定服务器的地址,它将类似于var socket=io;我专注于你答案的第一部分,我理解这种联系是如何运作的。我只是好奇客户端是如何找到socket.io javascript文件的:你说它在node_模块中查找它,但我不明白,node_模块这个词甚至不在script标记的src属性中。它怎么知道在那里寻找它呢?实际上我也很困惑它是如何得到那个文件的,但是我是如何找到那个文件的,在复制了那个文件之后,它对我起了作用,所以你只是把它从节点模块复制到与.html文件相同的目录中,它就起作用了?没问题吗?是的,它可以工作只是更改.html文件的src属性上面的答案是用于将客户端文件连接到服务器,如果客户端文件由不同的服务器提供,假设您的index.html位于apache服务器上,而您的节点服务器运行在不同的地址。如果您的文件仅由节点服务器提供服务,则不必指定服务器的地址,它将类似于var socket=io;我专注于你答案的第一部分,我理解这种联系是如何运作的。我只是好奇客户端是如何找到socket.io javascript文件的:你说它在node_模块中查找它,但我不明白,node_模块这个词甚至不在script标记的src属性中。它怎么知道在那里寻找它呢?实际上我也很困惑它是如何得到那个文件的,但是我是如何找到那个文件的,在复制了那个文件之后,它对我起了作用,所以你只是把它从节点模块复制到与.html文件相同的目录中,它就起作用了?没问题吗?是的,只要从.html文件中更改src属性就可以了
<script src="socket.io.js"></script>
$(function (){

    var socket = io("http://yourserver.com");

    $('form').submit(function(){
        socket.emit('chat message', $('#m').val());
        $('#m').val('');
        return false;
    });

    socket.on('chat message', function(msg){
        $('#messages').append($('<li>').text(msg));
    });

});
var socket = io("http://192.168.0.103:3000");