1
我正在構建一個iOS應用程序,我想將圖像上傳到ASP.NET MVC服務器組件,例如在網頁中發佈文件。使用什麼請求標頭將圖像文件從iOS上傳到ASP.NET?
我在iOS中創建了NSMutableURLRequest和NSConnection對象,並驗證了.NET服務器組件正在工作。
NSMutableURLRequest *request=[[NSMutableURLRequest alloc]init];
[request setTimeoutInterval:(interval==0?SERVICE_DEFAULT_TIMEOUT_INTERVAL:interval)];
[request setURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@%@",SERVICE_BASEURL,url]]];
[request setHTTPMethod:@"POST"];
...
的圖像數據是在一個NSData對象從AVFoundation模塊
NSData *imageData = [AVCaptureStillImageOutput jpegStillImageNSDataRepresentation:imageSampleBuffer];
在服務器中.NET組件控制器的方法是
[HttpPost]
public JsonResult UploadMedia(HttpPostedFileBase fileData)
{
...
return Json(@"Success");
}
目標是傳送將圖像數據發送到服務器並存儲它。我的問題是:
- 還需要創建其他HttpHeaderField值?
- 我應該如何在NSMutableURLRequest中嵌入圖像數據?
- .NET組件方法中應該使用什麼類型的參數?
- 根據#3中的類型,我應該如何提取服務器組件中的圖像數據?
事實證明,與HTML文件來自.NET中的iOS文件時不同,該文件不會自動作爲HttpPostedFileBase的實例路由到控制器方法。您必須使用HttpContext.Request.Files屬性來訪問它。 – ChrisP 2012-04-18 20:20:16
您是不是在.net中遇到這個問題? [InvalidOperationException]:由於對象的當前狀態,操作無效。 我讀了一些關於它,甚至添加密鑰 aspnet:MaxHttpCollectionKeys aspnet:MaxJsonDeserializerMembers 不斷得到相同的結果... – dwbrito 2012-09-26 12:54:30