0
내 요청과 함께 매개 변수로 이미지를 보내려고합니다. 아래 코드를 사용하여 PUT 요청을 호출했지만 이미지를 본문에 추가하는 방법을 알지 못합니다.swift3의 이미지를 서버에 업로드
func myImageUploadRequest()
{
let headers = [
"content-type": "multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW",
"cache-control": "no-cache"
]
let parameters = [
[
"name": "Name",
"value": "Swift"
],
[
"name": "Key",
"fileName": "123.png"
//UIImagePNGRepresentation(myImageView.image!)
]
]
let boundary = "----WebKitFormBoundary7MA4YWxkTrZu0gW"
var body = ""
var error: NSError? = nil
do{
for param in parameters {
let paramName = param["name"]!
body += "--\(boundary)\r\n"
body += "Content-Disposition:form-data; name=\"\(paramName)\""
if let filename = param["fileName"] {
let contentType = param["content-type"]!
let fileContent = try String(contentsOfFile: filename as! String, encoding: String.Encoding.utf8)
if (error != nil) {
print(error)
}
body += "; filename=\"\(filename)\"\r\n"
body += "Content-Type: \(contentType)\r\n\r\n"
body += fileContent
} else if let paramValue = param["value"] {
body += "\r\n\r\n\(paramValue)"
}
}
// }//do
let request = NSMutableURLRequest(url: NSURL(string: "http://——----docUpload/MediaUpload/")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0)
request.httpMethod = "PUT"
request.allHTTPHeaderFields = headers
// request.httpBody = postData as Data
let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
if (error != nil) {
print(error)
} else {
let httpResponse = response as? HTTPURLResponse
print(httpResponse)
}
})
dataTask.resume()
}
catch {
} //new
}
많은 예제를 보았지만 시도했지만 직접 구현할 수는 없습니다. 제 코드를 확인하고 저를 도우십시오.
PUT 방법을 사용 하시겠습니까? POST 메서드로 시도하십시오 – Firoj
PUT 메서드 –
나는 파일 첨부 코드가 OK라고 생각합니다. 서버 측에서도 으로 확인했는데 1 주일도 보내지 만 문제는 서버 측에 있었기 때문에 – Firoj