将ionic4 / socket.io连接到expressjs net :: ERR_CONNECTION_REFUSED

问题描述 投票:0回答:2

即使服务器没有运行,我也会一直得到net::ERR_CONNECTION_REFUSED

通过我的浏览器运行应用程序时它工作正常,但是,然后通过设备并本地运行我得到上面的错误。

我觉得我已经尝试了一切来解决这个问题。我已经阅读了如此多的堆栈溢出问题,同样的问题。他们都没有帮助过。

app.module:

import { SocketIoModule, SocketIoConfig } from 'ngx-socket-io';
const config: SocketIoConfig = { url: 'http:localhost:8080', options: {}};

注意:上面我也尝试过:

'Qazxswpoi'

'Qazxswpoi'

'Qazxswpoi'

'127.0.0.1:8080'

'127.0.0.1:8080/'

'Qazxswpoi'

'Qazxswpoi'

'Qazxswpoi'

'Qazxswpoi'

socketio服务器:

https://localhost:8080

注意:我在https://localhost:8080/上尝试了所有相同的变化,除了更改端口,因为我的Ionic 4应用程序在端口8100上运行。我也试过不包括http://localhost:8080/

我的SocketService:

http://127.0.0.1:8080

我期待它做的是连接,并为我的服务器注册已连接。

谢谢你的帮助

更新:我已经配置了我的config.xml:

http://127.0.0.1:8080/

没有这样的运气。仍然被封锁了

angular express socket.io ionic-native
2个回答
1
投票

一旦我尝试和搜索后我会粉碎我的笔记本电脑这个错误我得到的答案如下

首先

要在你的设备上运行它,你必须在你的应用程序中添加https://127.0.0.1:8080 https://127.0.0.1:8080/,你可以通过打开const app = require('express')(); const PORT = process.env.CHAT_PORT || 3000; const ENV = process.env.NODE_ENV || 'development'; const server = require('http').createServer(app , {origins: 'http://127.0.0.1:8100'}); const io = module.exports.io = require('socket.io')(server); const SocketManager = require('./lib/SocketManager'); 并输入origins:如果你使用的是Windows,所以在你的应用程序中它必须是

origins:

其次

这实际上是我的问题,请转到防火墙并禁用它进行测试,如果要生成应用程序,则必须仅启用应用程序运行的端口

请注意,您必须将其关闭才能接受指定端口上的连接

最后

确保您的本地服务器接受来自客户端的请求,您可以使用import { Socket } from 'ngx-socket-io'; import { Observable } from 'rxjs'; @Injectable({ providedIn: 'root' }) export class ChatService { constructor(private socket: Socket) {} public sendMessage(msg: any){ this.socket.emit('new-message', msg); } public getMessages = () => { return Observable.create(observer => { this.socket.on('new-message', messageObj => { observer.next(messageObj); }) }) } } 外部包。

要安装它:

   <content original-src="index.html" src="http://192.168.1.38:8100" />
    <access origin="*" />
    <allow-navigation href="*" />

要使用它:

IP Adress

0
投票

所以,我解决了这个问题。问题是愚蠢的,我很惭愧这样解决它。但问题是,当我尝试将手机连接到服务器时,我使用的是localhost 192.168.1.2的IP地址,它在客户端向内看自己!我需要做的是转到Apple->系统偏好设置 - >网络,然后使用以下IP地址:

Wi-Fi连接到MOVISTAR_PLUS_52B1,IP地址为192.168.X.XX.

把它放到我的配置中:CMD

© www.soinside.com 2019 - 2024. All rights reserved.