我已經搜索了很多谷歌以及在stackoverflow,但沒有得到任何滿意的解決方案,這對我有用。如何上傳圖像到ios中的.ashx網址
我必須上傳一些特定網址上的圖片,以擴展名.ashx結尾。 我已經看到如何上傳php服務器,但在這裏我沒有得到任何線索。
請通過提供一些示例代碼來幫助我。
我已經搜索了很多谷歌以及在stackoverflow,但沒有得到任何滿意的解決方案,這對我有用。如何上傳圖像到ios中的.ashx網址
我必須上傳一些特定網址上的圖片,以擴展名.ashx結尾。 我已經看到如何上傳php服務器,但在這裏我沒有得到任何線索。
請通過提供一些示例代碼來幫助我。
按照我的理解,aspx是頁面,.ashx是迴應輸出的代碼文件,以字符串格式和.ashx file is a web handler. A web handler file works just like an aspx file...。
所以我們認爲.ashx與.aspx相同,那麼這個代碼應該爲你工作(這爲我運行.aspx頁面)。這是向.net服務器發出請求。
的iOS
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);
.NET
檢索這樣的形象對於.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");
}
不知道,但希望這給你一個線索。
感謝它的正確..! – Sawant 2013-03-04 12:18:38
驗證您用於上傳圖像的變量(NSData)是否爲空&您的dot net服務器正在接收請求。
你想上傳到IIS服務器嗎? – 2013-03-04 11:52:30
不要以爲上傳方法爲POST後端上傳方式有什麼區別 – RolandasR 2013-03-04 11:53:55
其實我必須在dot net服務器上傳它。 – Sawant 2013-03-04 11:57:12