Заливка фото на сайт

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by Radzhab, 2 May 2013.

  1. Radzhab

    Radzhab New Member

    Joined:
    12 Sep 2011
    Messages:
    9
    Likes Received:
    0
    Reputations:
    0
    В общем эмулирую загрузку картинки на сервер. Вот что показывает сниффер

    HTML:
    -----------------------------708299735697
    Content-Disposition: form-data; name="_file"
     
    1.jpg
    -----------------------------708299735697
    Content-Disposition: form-data; name="file"; filename="blob"
    Content-Type: image/png
     
    ‰PNG
    ............
    
    Вот теперь мои наброски на шарпе
    PHP:
    var taimalda DateTime.Now.Ticks;
                var 
    boundary "------------------------" taimalda ;
                var 
    newLine Environment.NewLine;
                var 
    propFormat "--" boundary newLine +
                                    
    "Content-Disposition: form-data; name=\"{0}\"" newLine newLine +
                                    
    "{1}" newLine;
                var 
    fileHeaderFormat "--" boundary newLine +
                                        
    "Content-Disposition: form-data; name=\"{0}\"; filename=\"{1}\"" newLine "Content-Type: image/png";
     
                var 
    req = (HttpWebRequest)HttpWebRequest.Create("http://xxx.ru/new_style/flash_uploader/upload.php?fileapi"+taimalda);
                
    req.CookieContainer s;
                
    System.Net.ServicePointManager.Expect100Continue false;
                
    req.Referer "http://www.xxx.ru/user/setting/set_info";
     
                
    req.UserAgent "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0) Gecko/20100101 Firefox/4.0";
                
    req.Method WebRequestMethods.Http.Post;
                
    req.ContentType "multipart/form-data; boundary=" boundary;
     
                
    using (var reqStream req.GetRequestStream())
                {
                    var 
    reqWriter = new StreamWriter(reqStream);
                    var 
    tmp string.Format(propFormat"_file""1.jpg");
                    
    reqWriter.Write(tmp);
                    
    tmp string.Format(fileHeaderFormat"file""blob");
                    
    reqWriter.Write(tmp);
                    
    reqWriter.Flush();
                }
                var 
    res req.GetResponse();
                
    using (var resStream res.GetResponseStream())
                {
                    var 
    reader = new StreamReader(resStream);
                    var 
    ext reader.ReadToEnd();
                }
    PHP:
    -----------------635031060420469298
    Content
    -Dispositionform-dataname="_file"
     
    1.jpg
    --------------------------635031060420469298
    Content
    -Dispositionform-dataname="file"filename="blob"
    Content-Typeimage/png
    То есть видно что запрос просто передает текст 1.jpg. Сама картинка не учавствует в запросе.