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)  好像是不能出现中文字符。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部