これは、Google Cloud Messaging に対するコーディングのコンテキスト内で発生しましたが、他の場所にも当てはまります。
次の点を考慮してください。
var http = new HttpClient();
http.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("key=XXX");
と
var http = new HttpClient();
http.DefaultRequestHeaders.Add("Authorization", "key=XXX");
どちらも FormatException を生成します。
System.FormatException : 値 key=XXX' の形式が無効です。
解決策は、等号を削除することです。
リフレクターを掘り下げると、新しいヘッダー値を追加するときに実行される検証および解析コードがたくさんあることがわかります。なぜこれが必要なのですか?このクライアントは私たちの邪魔をするべきではありませんか?
この値の追加が成功するように、等号をどのようにエスケープしますか?