//TODO: broken now, replace with PUT request
        public HttpWebRequest UploadRequest(ShardInfo shard, File file, UploadMultipartBoundary boundary)
        {
            var url = new Uri($"{shard.Url}?cloud_domain=2&{Authent.Login}");

            var request = (HttpWebRequest)WebRequest.Create(url.OriginalString);

            request.Proxy           = HttpSettings.Proxy;
            request.CookieContainer = Authent.Cookies;
            request.Method          = "PUT";
            request.ContentLength   = file.OriginalSize; // + boundary.Start.LongLength + boundary.End.LongLength;
            request.Referer         = $"{ConstSettings.CloudDomain}/home/{Uri.EscapeDataString(file.Path)}";
            request.Headers.Add("Origin", ConstSettings.CloudDomain);
            request.Host = url.Host;
            //request.ContentType = $"multipart/form-data; boundary=----{boundary.Guid}";
            request.Accept    = "*/*";
            request.UserAgent = HttpSettings.UserAgent;
            request.AllowWriteStreamBuffering = false;
            return(request);
        }
示例#2
0
        public HttpWebRequest UploadRequest(ShardInfo shard, File file, UploadMultipartBoundary boundary)
        {
            var url = new Uri($"{shard.Url}?client_id={HttpSettings.ClientId}&token={Authent.AccessToken}");

            var request = (HttpWebRequest)WebRequest.Create(url);

            request.Proxy                     = HttpSettings.Proxy;
            request.CookieContainer           = Authent.Cookies;
            request.Method                    = "PUT";
            request.ContentLength             = file.OriginalSize;
            request.Accept                    = "*/*";
            request.UserAgent                 = HttpSettings.UserAgent;
            request.AllowWriteStreamBuffering = false;

            request.Timeout          = 15 * 1000;
            request.ReadWriteTimeout = 15 * 1000;
            //request.ServicePoint.ConnectionLimit = int.MaxValue;

            return(request);
        }
 public HttpWebRequest UploadRequest(ShardInfo shard, File file, UploadMultipartBoundary boundary)
 {
     throw new NotImplementedException();
 }