C#中:System.ArgumentException: 指定的值含有无效的 CRLF 字符。 参数名: value

调用第三方接口的时候会一直出现这个问题,
url = ConfigurationManager.AppSettings["Url"] + "/user/api/account/getAccount?UserName=" + UserName;
HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
request.Method = "GET";
request.KeepAlive = true;
request.AllowAutoRedirect = true;
request.Timeout = 20 * 1000;
request.UserAgent = "Apache-HttpClient/4.1.1";
request.ContentType = "application/x-www-form-urlencoded";
request.Headers.Add("Authorization",Tokens);
var response = (HttpWebResponse)request.GetResponse();
responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
这一行代码一直会报错,在网上找了很久也没找到解决方案。
最终经过不断的调试验证,发现是tokens中包含了,中文,token有时效性,且多次调用后会提示“每个签名只有一次有效”。
request.Headers.Add(string name,string value) 好像是不能出现中文字符。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
