내가 .NET 4.6.2에서 다음 코드를 실행,.NET 4.6.2()
var req = WebRequest.Create("https://fcm.googleapis.com/fcm/send");
req.Method = "POST";
req.ContentType = "application/json";
req.Headers.Add("Authorization", "key=my real key is here");
string json = "{\r\n \"to\": \"/topics/news\",\r\n \"data\": {\r\n \"item0\": \"0\",\r\n \"item1\": \"1\"\r\n }\r\n}";
var jsonbytes = Encoding.UTF8.GetBytes(json);
var reqStr = req.GetRequestStream();
reqStr.Write(jsonbytes, 0, jsonbytes.Length);
reqStr.Close();
var res = (HttpWebResponse)req.GetResponse();
Debug.WriteLine(res.StatusCode);
var sr = new StreamReader(res.GetResponseStream());
Debug.Write(sr.ReadToEnd());
sr.Close();
다음과 같은 예외가 var res = (HttpWebResponse)req.GetResponse();
에서 발생 WebRequest.GetResponse에서 예외 "값은 null 일 수 없습니다".
Exception Exception thrown: 'System.ArgumentNullException' in mscorlib.dll ("Value cannot be null.") System.ArgumentNullException
더 이상 정보를 얻을 수 없습니다. 나는 어떤 가치가 null인지 모른다. 나는 .NET 4.5.2에서 같은 코드를 실행했는데 예외는 발생하지 않았다. 이 예외가 발생하는 이유는 무엇입니까?
null이있는 것을 보려면 중단 점을 사용하십시오. –
'var sr = new StreamReader (res.GetResponseStream());'가 아닌이 줄에 예외가 발생 했습니까? 'GetResponse'는 인수 null을 던지지 않는 것 같습니다 : https://msdn.microsoft.com/en-us/library/system.net.webrequest.getresponse(v=vs.110).aspx StreamReader ctor는 stream is null입니다. https://msdn.microsoft.com/en-us/library/yhfzs7at(v=vs.110).aspx – KMoussa
호출 스택을 포함하여 * 전체 * 예외를 게시하십시오. 'Exception.ToString()'으로 얻을 수 있습니다. 이 예외가 실제로 던져진 곳을 표시합니다 –