我正在尝试从 C# 本地触发信号。目标是向 localhost/serv?stream=SOME_STREAM 发出请求。我不在乎从服务器获得响应,我只需要让服务器接收请求。现在我正在使用以下代码,尽管我并不真正关心使用这些对象——任何解决方案都可以:
private void updateStreams(string streamname)
{
WebRequest myWebRequest = WebRequest.Create(new Uri("http://localhost/serv?stream=" + streamname));
WebResponse myWebResponse = myWebRequest.GetResponse();
myWebResponse.Close();
}
我尝试了一些调试,阻塞调用似乎是 myWebRequest.GetResponse(),但这一行很关键,因为没有它就不会发出请求。我还尝试了以下代码,它们在同一点阻塞:
var myWebRequest = (System.Net.HttpWebRequest)WebRequest.Create(new Uri("http://localhost/serv?stream=" + sesh.session_name));
using (var myWebResponse = (System.Net.HttpWebResponse)myWebRequest.GetResponse())
{
var responseStream = myWebResponse.GetResponseStream();
responseStream.ReadTimeout = 2;
responseStream.Close();
responseStream.Dispose();
myWebResponse.Close();
}