我正在编写一个RTSP服务器。当我等待来自客户端的标头时,我的服务器收到:
OPTIONS rtsp://192.168.1.147:55555 RTSP/1.0
CSeq: 2
User-Agent: LibVLC/2.0.1 (LIVE555 Streaming Media v2011.12.23)
此处的readLine()返回null。然后我发送:
bw.write("RTSP/1.0 200 OK" + CRLF);
bw.write("Supported: play.basic, con.persistent");
bw.write("CSeq: " + RTSPSeqNb + CRLF);
bw.write("Session: " + RTSP_ID + CRLF);
bw.write("Public: SETUP, PLAY, TEARDOWN" + CRLF+CRLF);
bw.flush();
其中CRLF="\r\n"但没有任何回应。我的问题是:为什么?
是否忘记将CRLF
追加到CSeq
之前的第二行?然后很多网络"为什么"的问题都可以用wireshark来回答。