[問題] Upload image to PHP from iOS

看板MacDev作者 (John)時間9年前 (2015/11/23 20:37), 9年前編輯推噓3(306)
留言9則, 4人參與, 最新討論串1/1
使用語言:Obj-C 各位前輩好,想請問一個關於透過App將圖片上傳至WebService的問題。 目前要做的事情是這樣: App能從相簿中選擇圖片並呼叫WebService  WebService會將圖片存到指定的路徑並將檔名存在資料庫裏頭 當App需要圖片時 只需要去呼叫檔名 就能從指定的路徑中抓出正確的圖片 目前其他部分都沒問題, 唯一有問題的是"圖片丟到WebService上"和"WebService將圖片存到指定路徑"這兩個 由於沒做過類似的功能(我是新手QQ) 所以我在網路上稍微找過了一些資料, 最後參考這篇來做: http://goo.gl/WaAwSq 我比較有問題的是這篇文章中所提到的 "body" 我不太清楚為什麼需要組一個body出來 而其中這一句: [body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"uploadedfile\"; filename=\"test.png\"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]]; 找了其他資料之後,有看到"uploadefile"和"test.png"要設定自己所用的東西上去 但是不太清楚這到底該設定什麼 所以這邊就硬著頭皮複製貼上丟去程式裏頭 結果就是PHP Server那邊在讀$_FILE的時候一直都沒東西 我想請問是因為我哪裡沒有給正確的資訊所以它才沒有作用嗎? Deadline就是這禮拜日,整個App功能都做好了就只差上傳圖片這個... 整個人緊張到胃快抽痛而死了... 因為真的不知道該問誰才來這邊發問 希望不會因為問了太簡單的問題而被各位鞭死... -- Update : 對了,我這邊是使用NSURLConnection來做的 -- Be a man. Do the right thing. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.233.2.53 ※ 文章網址: https://www.ptt.cc/bbs/MacDev/M.1448282223.A.1EF.html ※ 編輯: KKFN (36.233.2.53), 11/23/2015 20:43:24

11/23 22:27, , 1F
珍惜生命, 善用 AFNetworking
11/23 22:27, 1F

11/23 22:28, , 2F

11/23 23:53, , 3F
為了安全 我都叫後台寫base64 string 轉jpg..
11/23 23:53, 3F
所以是App端先將圖片轉成Base64 string然後丟給後台 後臺再將base64 轉回成圖片並儲存嗎 有相關的資料可以參考嗎? 我不太清楚這該怎麼做 ※ 編輯: KKFN (36.233.2.53), 11/24/2015 01:05:41

11/24 08:59, , 4F
可以將base64包在json裡post上去,可要注意檔案大小
11/24 08:59, 4F

11/24 09:07, , 5F
這有用af寫好的,你可以先用然後慢慢研究
11/24 09:07, 5F

11/24 09:07, , 6F
11/24 09:07, 6F

11/24 09:07, , 7F
11/24 09:07, 7F
所以那個filename是自訂上傳之後PHP所收到的檔名嗎? 那那個name =\"userfile\"的userfile是什麼意思呢? 是要指定自己的什麼上去嗎? 還是不用理他直接套用就行了? ※ 編輯: KKFN (36.233.2.53), 11/24/2015 10:48:17

11/24 10:53, , 8F
Client 端的 name 會對應到上傳後 $_FILES 裡的 key
11/24 10:53, 8F

11/24 10:54, , 9F
filename 就是對應到上傳之後伺服器看到的檔名沒錯
11/24 10:54, 9F
所以兩個隨便設都沒關係,並不會影響上傳嗎? ※ 編輯: KKFN (36.233.2.53), 11/24/2015 10:56:12
文章代碼(AID): #1MKmXl7l (MacDev)
文章代碼(AID): #1MKmXl7l (MacDev)