2012-05-04 4 views
0

서버에 이미지가 있습니다. 다른 서버에 이미지를 업로드하고 싶습니다. 서버의 이미지를 업로드하는 코드를 만들었지 만 로컬에 업로드해도 괜찮습니다.하지만 그렇지 않았습니다. 서버에 업로드 할 수 없다는 점을 알아 두십시오.이미지는 웹 서버에는 업로드되지 않지만 로컬에서는 괜찮습니다.

 try 
     { 
      byte[] content; 
      HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); 
      WebResponse response = request.GetResponse(); 

      Stream stream = response.GetResponseStream(); 

      using (BinaryReader br = new BinaryReader(stream)) 
      { 
       content = br.ReadBytes(500000); 
       br.Close(); 
      } 
      response.Close(); 

      string CompleteDPath = "ftp path"; 
      string UName = "abc"; 
      string PWD = "123"; 



      WebRequest reqObj = WebRequest.Create(CompleteDPath + file_name); 
      reqObj.Method = WebRequestMethods.Ftp.UploadFile; 
      reqObj.Credentials = new NetworkCredential(UName, PWD); 
      reqObj.GetRequestStream().Write(content, 0, content.Length); 
      reqObj = null; 



      //FileStream fs = new FileStream(file_name, FileMode.Create); 
      //BinaryWriter bw = new BinaryWriter(fs); 

      //bw.Write(content); 
      //fs.Close(); 
      //bw.Close(); 
     } 
     catch (Exception ex) 
     { 
      Response.Write(ex.Message); 
     } 
+3

예외 오류가 발생합니까? – Habib

+0

아니요 예외 오류가 없습니다 ... – Janhavi

+0

서버에 대한 쓰기 권한 확인 – Mediator

답변

0

시도가 있습니다.

byte[] content;  

HttpWebRequest request1 = (HttpWebRequest)WebRequest.Create(url);  

WebResponse response1 = request1.GetResponse(); 

Stream stream = response1.GetResponseStream(); 

using (BinaryReader br = new BinaryReader(stream)) 
{ 
    content = br.ReadBytes((int)stream.Length); 
    br.Close(); 
} 
response1.Close(); 


FtpWebRequest request = (FtpWebRequest)WebRequest.Create("ftp://ftp_path"); 
request.Method = WebRequestMethods.Ftp.UploadFile; 

request.Credentials = new NetworkCredential("abc", "123"); 
request.ContentLength = content.Length; 

Stream requestStream = request.GetRequestStream(); 
requestStream.Write(content, 0, content.Length); 
requestStream.Close(); 

FtpWebResponse response = (FtpWebResponse)request.GetResponse(); 
response.Close(); 
+0

이 코드 – Janhavi

+0

에서 "이 스트림은 검색 작업을 지원하지 않습니다."예외가 발생하는 경우 예외가 발생합니까? – daryal

+0

이 하나의 내용 = br.ReadBytes ((int) stream.Length); – Janhavi

관련 문제