6
실제로 TCP/IP의 로컬 네트워크에서 굵은 클라이언트 응용 프로그램 (명령은 수정할 수 없음)에 명령을 보내는 웹 응용 프로그램 (ASP.NET MVC)에서 작동합니다. 두꺼운 클라이언트 응용 프로그램이 내 명령에 응답하거나 정보를 제공해야하므로 연결을 항상 열어야합니다. 그래서 거기가 더 나은,TCP/IP 클라이언트 측 루프 .NET
public static async void getMessage()
{
while(true)
{
// Buffer to store the response bytes.
Byte[] data = new Byte[100000];
// String to store the response ASCII representation.
String responseData = String.Empty;
// Read the first batch of the TcpServer response bytes.
Int32 bytes = await stream.ReadAsync(data, 0, data.Length);
if (bytes == 0) continue;
responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes);
Debug.Write(responseData);
await stream.ReadAsync(data, 0, data.Length);
}
}
실제로 일하고, 나는 서버의 응답을 받았지만, 브라우저는 항상 "localhost를 기다리고"입니다 : 그와 같은 서버 응답을 확인하는 루프를 만들 방법은 브라우저에서 루프없이, 할 수 있습니까?
정말 고마워요!
@dperish에 시간을 내 주셔서 감사합니다. 질문이 하나 더 있습니다. 어쩌면 어리석은 웹 응용 프로그램이 인터넷에 연결되지 않은 로컬 네트워크에서만 사용되도록 서버에 "배포"될 것입니다. 신호기를 사용하는 것이 문제가 될 수 있습니까? –
아니요, 인트라넷 서버에 배포 된 SignalR 패키지가있는 한 중요하지 않습니다. NuGet ('Install-Package Microsoft.AspNet.SignalR')을 통해 설치 한 경우 제대로 패키지되고 배포되어야합니다 – dperish