"Wert kann nicht null sein:" Wenn ich den folgenden Code auf .NET 4.6.2 laufen.NET 4.6.2 Ausnahme bei WebRequest.GetResponse()
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();
die folgende Ausnahme bei var res = (HttpWebResponse)req.GetResponse();
auftritt.
Exception Exception thrown: 'System.ArgumentNullException' in mscorlib.dll ("Value cannot be null.") System.ArgumentNullException
Ich konnte keine weiteren Informationen erhalten. Ich weiß nicht, welcher Wert null ist. Ich habe den gleichen Code auf .NET 4.5.2 ausgeführt, diese Ausnahme ist nicht aufgetreten. Warum tritt diese Ausnahme auf?
Verwenden Sie Haltepunkte, um zu sehen, was null ist. –
Sind Sie sicher, dass die Ausnahme in dieser Zeile und nicht in 'var sr = new StreamReader (res.GetResponseStream());'? 'GetResponse' scheint das Argument nicht auf null zu setzen: https://msdn.microsoft.com/en-us/library/system.net.webrequest.getresponse(v=vs.110).aspx während StreamReader wird, wenn der Stream ist null https://msdn.microsoft.com/en-us/library/yhfzs7at(v=vs.110).aspx – KMoussa
Bitte posten Sie die * full * Ausnahme, einschließlich der Aufrufliste. Sie können es mit 'Exception.ToString()' bekommen. Dies zeigt, wo die Ausnahme tatsächlich geworfen wurde –