###前提・実現したいこと
Alamofireのuploadでimage画像をサーバーにアップロードするコードを作成しています。サーバー側はrailsで作成しました。
swift
1func postUserParams(imagedata: NSData) { 2 3 let url = "" 4 let access_token: String = readData(key: "access_token") 5 let headers : HTTPHeaders = [ 6 "Authorization": access_token 7 ] 8 9 Alamofire.upload( 10 multipartFormData: { (multipartFormData) in 11 multipartFormData.append(imagedata as Data, withName: "photo", fileName: "image.jpg", mimeType: "image/jpg")}, 12 13 to: url, 14 headers: headers, 15 encodingCompletion: { encodingResult in 16 17 switch encodingResult { 18 case .success(let upload, _, _): 19 upload.responseJSON { response in 20 debugPrint(response) 21 } 22 case .failure(let encodingError): 23 print(encodingError) 24 } 25 } 26 ) 27 }
ruby
1 def user_params_profile 2 params.require(:user).permit(:user_id, :image, :name, :profile, :birthday) 3 end
rails側のStrongParametersを上記の様に作したため、iOS(Alamofire)側で
["user": [ "user_id": user_id, "image": image, # アップロードする画像データ "name": name, "profile": profile, "birthday": birthday, ] ]
みたいな感じでparameterをpostさせたいのですが、iOS(Alamofire)をどの様にすればいいでしょうか?
ご教授よろしくお願いします。
あなたの回答
tips
プレビュー