2013-03-04 2 views
0

나는 stackoverflow뿐만 아니라 google에서도 많은 검색을했지만 나에게 적합한 만족스러운 해결책을 얻지 못했습니다.ios의 .ashx url에 이미지를 업로드하는 방법

.ashx으로 끝나는 특정 URL에 이미지를 업로드해야합니다. PHP 서버에 업로드하는 방법을 보았습니다. 그러나 여기에서는 어떤 단서도 얻지 못했습니다.

몇 가지 샘플 코드를 제공해주세요.

+0

IIS 서버에 업로드 하시겠습니까? –

+0

업로드 방법이 POST 인 경우 업로드하는 백엔드가 어떤 차이가 있다고 생각하지 마십시오. – RolandasR

+0

실제로 점 인터넷 서버에 업로드해야합니다. – Sawant

답변

1

aspx는 페이지이며 .ashx는 문자열 형식으로 응답을 출력하는 코드 파일이고 .ashx file is a web handler. A web handler file works just like an aspx file...입니다.

그래서 우리는 .aspx와 동일합니다.이 코드는 (나를 위해 .aspx 페이지에서 실행되고 있습니다) 당신을 위해 작동해야합니다. 이것은 .net 서버에 요청하고 있습니다.

아이폰 OS

UIImage *img = [UIImage imageNamed:@"test.png"]; 
    NSData *imageData = UIImageJPEGRepresentation (img , 90); 

    NSString *urlString [email protected]"www.xyz.com/ImageUpload.aspx?filename=test"; 

    NSLog(@"IMAGE_UPLOAD_URL -------------> %@",urlString); 

    NSMutableURLRequest *request = [[[ NSMutableURLRequest alloc ] init ] autorelease ]; 
    [request setURL :[ NSURL URLWithString :urlString]]; 
    [request setHTTPMethod : @"POST" ]; 
    NSString *boundary = @"---------------------------14737809831466499882746641449"; 
    NSString *contentType = [ NSString stringWithFormat : @"multipart/form-data; boundary=%@" ,boundary]; 
    [request addValue :contentType forHTTPHeaderField : @"Content-Type" ]; 
    /*  body of the post */ 
    NSMutableData *body = [ NSMutableData data ]; 
    [body appendData :[ NSData dataWithData :imageData]]; 
    [request setHTTPBody :body]; 
    NSData *returnData = [ NSURLConnection sendSynchronousRequest :request returningResponse : nil error : nil ]; 

    NSString *returnString = [[ NSString alloc ] initWithData :returnData encoding : NSUTF8StringEncoding ]; 
    InfoLog(@"_______ IMAGE_UPLOAD response -------------> .%@.",returnString); 
에서 .aspx 페이지

if (Request.QueryString["filename"] != null) 
    { 
     string filename = Request.QueryString["filename"].ToString(); 
     string saveFilePath = ConfigurationManager.AppSettings["CPSBImageFolder"].ToString(); 
     //string saveFilePath = Server.MapPath("~/images"); 
     saveFilePath = saveFilePath + filename; 
     Stream objStream = Request.InputStream; 
     StreamReader objStreamReader = new StreamReader(objStream); 
     Image image = Image.FromStream(objStreamReader.BaseStream, true); 
     ImageCodecInfo[] info = ImageCodecInfo.GetImageEncoders(); 
     EncoderParameters param = new EncoderParameters(1); 
     param.Param[0] = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, 100L); 
     image.Save(saveFilePath, info[1], param); 
     Response.Write("true"); 
    } 

확실하지 않음이 같은 이미지를 가져

.NET

그러나 이것은 당신에게 단서를 얻을 바랍니다.

+0

정확한 답변을드립니다 .. !! – Sawant

0

이미지 업로드에 사용하는 변수 (NSData)가 null이 아닌지 확인하십시오. & 도트 네트워크 서버가 요청을 받고 있습니다.

관련 문제