wikihost-opensource / als

Another Looking-glass Server
MIT License
1.18k stars 144 forks source link

[BUG] ping 结果没有渲染 #42

Closed Jackxwb closed 1 year ago

Jackxwb commented 1 year ago

ping页面,ws中均有数据响应,但是结果没有渲染到页面

环境

操作系统 Window 10 ,edge和火狐浏览器

使用的镜像版本 演示站点、与本地Docker镜像(Last)

现象

ws中均有数据返回,但没有渲染到页面上 image image

Jackxwb commented 1 year ago

als-master\ui\src\components\Utilities\Ping.vue 第62行

            if (ticket.length == 0 && e[2] == this.host && e.length == 4) {
              ticket = e[3];
              this.wsMessage.splice(i, 1);
              return true;
            }

if里面的 e[2] == this.host ,如果输入的是域名,后端会解析成对应ip地址然后返回,会导致和前端输入的不一样,导致一直程序卡住

Jackxwb commented 1 year ago

或者修改后端第一次返回值 als-master\backend\app\clients\Websocket\Commands\Ping.php 第15行

        $domain = array_shift($args);
        $host = gethostbyname($domain);
        if ($host === false || ($host == $domain && !ip2long($domain))) {
            return $this->end();
        }
        $this->client->send("{$this->commandIndex}|1|{$host}|{$this->ticket}");

最后一行 $host 改成 $domain 可以让前端正确进入后续阶段 image