ฉันพยายามอัปโหลดไฟล์โดยใช้Alamofire
. การอัปโหลดทำงานได้ดีเมื่อใช้ File ( NSUrl
) อย่างไรก็ตามดูเหมือนว่าฉันจะไม่สามารถหาวิธีใช้NSData
ตัวเลือกนี้ได้
นี่คือสิ่งที่ฉันมีในการทดสอบ:
var url:NSURL = NSURL.URLWithString("http://localhost:8080/bike.jpeg")
var err: NSError?
var imageData :NSData = NSData.dataWithContentsOfURL(url,options: NSDataReadingOptions.DataReadingMappedIfSafe, error: &err)
Alamofire.upload(.POST, "http://localhost:8080/rest/service/upload/test.png", imageData)
.progress { (bytesWritten, totalBytesWritten, totalBytesExpectedToWrite) in
println(totalBytesWritten)
}
.responseJSON { (request, response, JSON, error) in
println(request)
println(response)
println(JSON)
}
ฉันได้รับรหัสสถานะ 415?
นอกจากนี้ฉันจะส่งข้ามพารามิเตอร์เพิ่มเติมในการอัปโหลดได้อย่างไร
ขอบคุณ
แก้ไข
ฉันไม่ได้ตั้งค่าประเภทเนื้อหาที่ถูกต้อง:
var manager = Manager.sharedInstance
manager.session.configuration.HTTPAdditionalHeaders = ["Content-Type": "application/octet-stream"]
let imageData: NSMutableData = NSMutableData.dataWithData(UIImageJPEGRepresentation(imageTest.image, 30));
Alamofire.upload(.POST, "http://localhost:8080/rest/service/upload?attachmentName=file.jpg", imageData)
.progress { (bytesWritten, totalBytesWritten, totalBytesExpectedToWrite) in
println(totalBytesWritten)
}
.responseString { (request, response, JSON, error) in
println(request)
println(response)
println(JSON)
}
ยังคิดไม่ออกว่าจะส่งพารามิเตอร์เพิ่มเติมพร้อมกับการอัปโหลดอย่างไร