相关疑难解决方法(0)

Swift POST请求发送一个空的正文

这是代码:

func makePOSTCall(endpoint: String, languageName: String) {
    guard let url = URL(string: endpoint) else {
        print("Could not create URL.")
        return
    }

    let requestLang: [String: Any] = ["name": languageName]
    let requestBody = try? JSONSerialization.data(withJSONObject: requestLang)

    var urlRequest = URLRequest(url: url)
    urlRequest.httpBody = requestBody
    urlRequest.httpMethod = "POST"
    let session = URLSession.shared
    let task = session.dataTask(with: urlRequest) {

        data, response, error in
        guard let data = data, error == nil else {
            print(error?.localizedDescription ?? "No data")
            return
        }

        let responseJSON = try? JSONSerialization.jsonObject(with: …
Run Code Online (Sandbox Code Playgroud)

rest json ios swift

3
推荐指数
1
解决办法
1744
查看次数

使用swift和alamofire将视频(和属性)上传到youtube

我有兴趣将视频上传到youtube以及标题,说明和关键字.下面的代码将视频上传到youtube而没有任何属性:

func postVideoToYouTube(token: String, callback: Bool -> Void){

let headers = ["Authorization": "Bearer \(token)"]
let urlYoutube = "https://www.googleapis.com/upload/youtube/v3/videos?part=id"

let path = NSBundle.mainBundle().pathForResource("video", ofType: "mp4")
let videodata: NSData = NSData.dataWithContentsOfMappedFile(path!)! as! NSData
upload(
    .POST,
    urlYoutube,
    headers: headers,
    multipartFormData: { multipartFormData in
        multipartFormData.appendBodyPart(data: videodata, name: "video", fileName: "video.mp4", mimeType: "application/octet-stream")
    },
    encodingCompletion: { encodingResult in
        switch encodingResult {
        case .Success(let upload, _, _):
            upload.responseJSON { request, response, error in
                print(response)
                callback(true)
            }
        case .Failure(_):
            callback(false)
        }
    })
Run Code Online (Sandbox Code Playgroud)

}

我一直在尝试修改urlYoutube以包含必要的代码段信息无效:

let snippetTitle = …
Run Code Online (Sandbox Code Playgroud)

youtube youtube-api swift alamofire

2
推荐指数
1
解决办法
2871
查看次数

如何在swift 3中发布原始数据?

如果我使用 Postman 发布原始数据,就会收到回复。我正在使用此代码

 var dict = Dictionary<String, Any>()
 dict = ["user_id" :userid as AnyObject, "type" :type as AnyObject, "complaint_id" :complaintId as AnyObject,  "auth_code" : authCode as AnyObject, "isSkip" :isSkip as AnyObject]

 let url:URL = URL(string: "http://development.easystartup.org/prigovo/Backend/detailed_complaint/index.php")!
    let session = URLSession.shared

   var postData = NSData()
    do{

    postData = try JSONSerialization.data(withJSONObject: dict, options: JSONSerialization.WritingOptions.prettyPrinted) as NSData!
    }catch {
        print("error")
    }

    var request = URLRequest(url: url)
    request.httpMethod = "POST"
   // request.cachePolicy = NSURLRequest.CachePolicy.reloadIgnoringCacheData
    request.setValue("\(postData.length)", forHTTPHeaderField: "Content-Length")
    request.setValue("text/html", forHTTPHeaderField: "Content-Type")
    request.setValue("json/application", forHTTPHeaderField: "Accept")

    request.httpBody …
Run Code Online (Sandbox Code Playgroud)

ios raw-data swift3

1
推荐指数
1
解决办法
6396
查看次数

标签 统计

ios ×2

swift ×2

alamofire ×1

json ×1

raw-data ×1

rest ×1

swift3 ×1

youtube ×1

youtube-api ×1