我想通过C#套接字服务器将推送通知发送到React Native。在本机方面,我使用socket.io。 React Native连接到服务器,但是再也不会收到消息。
反应本机代码:
socket = io.connect('xx.xx.xx.xx:2201');
socket.on((messages) => {
console.log("response" + JSON.stringify(messages));
});
服务器代码:
public static void StartListening()
{
byte[] bytes = new Byte[1024];
IPHostEntry ipHostInfo = Dns.GetHostEntry(Dns.GetHostName());
IPAddress ipAddress = ipHostInfo.AddressList[0];
IPEndPoint localEndPoint = new IPEndPoint(ipAddress, 11000);
/
Socket listener = new Socket(ipAddress.AddressFamily,SocketType.Stream, ProtocolType.Tcp);
listener.Bind(localEndPoint);
listener.Listen(10);
while (true)
{
Socket handler = listener.Accept();
data = null;
int bytesRec = handler.Receive(bytes);
data += Encoding.ASCII.GetString(bytes, 0, bytesRec);
Console.WriteLine("Receieved message and sent: " + data);
byte[] msg1 = Encoding.ASCII.GetBytes("jjjjjj");
handler.Send(msg1);
handler.Shutdown(SocketShutdown.Both);
handler.Close();
}
Console.WriteLine("\nPress ENTER to continue...");
Console.Read();
}
答案 0 :(得分:1)
也许这对您有帮助。
import SocketIOClient from 'socket.io-client';
this.socket = SocketIOClient('xx.xx.xx.xx:2201', {
transports: ['websocket']
});
this.socket.on('message', (message) => { // you can send 'message' emit from server side and than get the on by using 'message' keyword
console.log(message)
});