2012-03-01 78 views
0

我正在使用ASIHTTPRequest將圖像上傳到webservice。我的代碼工作正常(我認爲),但我不知道如何編寫Web服務,所以我可以檢索圖像並顯示它(在web browser)。顯示通過網絡瀏覽器通過ASIHTTPRequest發送的圖像

我不知道這是否相關,但我從iPhone傳遞圖像數據。所以web service現在將不得不採取此image data並將其轉換爲PNG並將其顯示在web browser上。

我不知道如何做到這一點。有人可以幫助我一起教程或示例代碼開始。

注:在ASIHTTPRequest我使用的方法postData將數據發送到web serviceweb services應該在PHP

回答

0

使用ASIFormDataRequest寫入,它有一個方法文件上傳(addFile),然後您只需使用PHP中的$ _FILES超全局工作,就像使用常規的HTML表單上傳一樣。在iPhone端,最好將圖像保存到應用程序的Documents或Cache文件夾,並在請求中引用文件路徑。

事情是這樣的:

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:@"http://url/path"]]; 
[request setDelegate:self]; 
[request addFile:filePath forKey:@"uploaded"]; 
[request setDidFinishSelector:@selector(onUploadDone:)]; 
[request setDidFailSelector:@selector(onUploadError:)]; 
[request startAsynchronous]; 
+0

謝謝您的回覆,但我有送形象,一旦我有拍攝的照片(利用攝像頭),或從的UIImagePickerController(從庫中選擇)。我無法使用如示例中所示的url(http://www.example.com/image.jpg) – shajem 2012-03-04 13:00:47

+0

Objective C使用「URL」作爲對網址和本地文件系統的引用。在我的代碼示例中,filePath是從相機保存的本地文件的NSUrl。當你使用[data writeToURL:[NSURL fileURLWithPath:path] atomically:YES]將圖像對象保存到文件系統中(數據是圖像的NSData表示形式) – Simon 2012-03-06 04:06:09