C# CloudFlare剪切HTTP POST内容

C# CloudFlare剪切HTTP POST内容,c#,.net,http,proxy,http-post,C#,.net,Http,Proxy,Http Post,我与CloudFlare后面的服务器通信。我很少从服务器收到错误,就好像它没有收到我的HTTP POST请求的内容一样。这种情况很少发生,可能只有1-2%。此外,如果我立即重新发送相同的请求,在大多数~99%的情况下都可以正常工作 当服务器不在CloudFlare之后或者他们使用其他类似服务时,我对服务器没有任何问题。此外,如果服务器临时移出CloudFlare,问题就会消失。我在CloudFlare后面的另一台服务器上遇到了完全相同的问题 我正在使用C.NET4.5。连接是安全的HTTPS 我

我与CloudFlare后面的服务器通信。我很少从服务器收到错误,就好像它没有收到我的HTTP POST请求的内容一样。这种情况很少发生,可能只有1-2%。此外,如果我立即重新发送相同的请求,在大多数~99%的情况下都可以正常工作

当服务器不在CloudFlare之后或者他们使用其他类似服务时,我对服务器没有任何问题。此外,如果服务器临时移出CloudFlare,问题就会消失。我在CloudFlare后面的另一台服务器上遇到了完全相同的问题

我正在使用C.NET4.5。连接是安全的HTTPS

我已经使用Fiddler捕获了HTTP请求/响应。我完全看不出好的请求和坏的请求之间有什么区别

POST https://btc-e.com/tapi HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Key: ****************
Sign: e94eb19d4cdf29b6629c2acc6934bacdf502bdc93c14a44521ef9d64823f4ab560ef14fce468b7df897f0b2f2f4677c4191801f7453c784bda7fd0ede4b95f59
Host: btc-e.com
Content-Length: 42

nonce=1362901653&method=OrderList&active=1

======================================================

HTTP/1.1 200 OK
Server: cloudflare-nginx
Date: Sun, 10 Mar 2013 08:41:16 GMT
Content-Type: text/html
Transfer-Encoding: chunked
Connection: keep-alive
X-Powered-By: PHP/5.4.12
X-Frame-Options: DENY
Expires: Sun, 17 Mar 2013 08:40:56 GMT
Cache-Control: max-age=604800
Set-Cookie: __cfduid=****************; expires=Mon, 23-Dec-2019 23:50:00 GMT; path=/; domain=.btc-e.com
CF-RAY: 4ceb4731fea02d9

10e
{"success":0,"error":"*************"} 0
0
我正在使用以下代码,但我认为这与此无关:

byte[] data = Encoding.ASCII.GetBytes(BuildPostData(args)); //values are properly encoded using HttpUtility.UrlEncode

HttpWebRequest request = WebRequest.CreateHttp(ApiUri);
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = data.Length;
request.Timeout = 5000;
request.Headers.Add("Key", Key);
request.Headers.Add("Sign", sign);    

using (Stream outStream = request.GetRequestStream())
{
    outStream.Write(data, 0, data.Length);
    outStream.Flush();
}

using (WebResponse response = request.GetResponse())
using (var streamReader = new StreamReader(response.GetResponseStream()))
    result = JObject.Parse(streamReader.ReadToEnd());
我已经尝试过但没有成功:

HTTP 1.1/1.0 保持激活/关闭 预期100个连续开/关 启用/禁用Cookies 发送分块开/关 有什么想法吗

更新: 2013-05-01问题已经解决了。客户端没有任何更改。刚过了3-4周