System.FormatException: The format of value 'xxx' is invalid.
今天在调用 FCM
进行app消息推送时,发生一个问题:
System.FormatException: The format of value 'key=xxxxxx' is invalid.
at System.Net.Http.Headers.HttpHeaderParser.ParseValue(String value, Object storeValue, Int32& index)
at System.Net.Http.Headers.HttpHeaders.ParseAndAddValue(HeaderDescriptor descriptor, HeaderStoreItemInfo info, String value)
at System.Net.Http.Headers.HttpHeaders.Add(String name, String value)
这是因为 FCM
的 api 需要添加 Authorization
的 Header,其格式为 key=xxxxxx
。
但 HttpClient 在添加 Header 的时候,会默认检查 Header 是否符合规范,很明显 key=xxxxxx
这种格式并不符合规范。但并不是每个服务提供者都会要求符合规范的 Header,这种情况怎么办呢?
// 添加 Header 并检查是否符合规范
_request.Headers.Add(key, value);
// 不检查,直接添加 Header
_request.Headers.TryAddWithoutValidation(key, value);