###前提・実現したいこと
Swiftを使用して開発しているiOSアプリから、PHPに画像とテキストを送信し、DBに保存したいと考えています。
Alamofireを使用しています。
現状としては送信すると、テキストだけは正常に読み込まれるのですが、画像は読み込んでもらえません。
###該当のソースコード
swift
1 //画像のアップロード処理 2 func myImageUploadRequest(){ 3 4 let stringData = postTextView.text.data(using: .utf8)! 5 let imageData = UIImageJPEGRepresentation(imageView.image!, 1.0)! 6 7 Alamofire.upload( 8 multipartFormData: { multipartFormData in 9 multipartFormData.append(stringData, withName: "message") 10 multipartFormData.append(imageData, withName: "files") 11 }, 12 to: "http://sample.com/api_write_sample.php", 13 encodingCompletion: { encodingResult in 14 switch encodingResult { 15 case .success(let upload, _, _): 16 upload.responseJSON { response in 17 debugPrint(response) 18 } 19 case .failure(let encodingError): 20 print(encodingError) 21 } 22 } 23 ) 24 }
###ポスト送信時のresponse
[Request]: POST http://sample.com/api_write_sample.php [Response]: <NSHTTPURLResponse: 0x1c4423d80> { URL: http://sample.com/api_write_sample.php } { Status Code: 200, Headers { Connection = ( close ); "Content-Length" = ( 4 ); "Content-Type" = ( "text/html; charset=UTF-8" ); Date = ( "Mon, 18 Dec 2017 02:42:35 GMT" ); Server = ( Apache ); "X-Powered-By" = ( "PHP/5.3.3" ); } } [Data]: 4 bytes [Result]: SUCCESS: 1 [Timeline]: Timeline: { "Request Start Time": 535257754.969, "Initial Response Time": 535257755.030, "Request Completed Time": 535257755.507, "Serialization Completed Time": 535257755.508, "Latency": 0.060 secs, "Request Duration": 0.538 secs, "Serialization Duration": 0.001 secs, "Total Duration": 0.539 secs }
あなたの回答
tips
プレビュー