ReactiveCocoa 4.0 :- 无法映射 NSURLSession.sharedSession().rac_dataWithRequest

ReactiveCocoa 4.0 :- Unable to map the NSURLSession.sharedSession().rac_dataWithRequest

我在使用反应式 cocoa 网络服务请求时收到警告。

Result of call to 'on(started:event:failed:completed:interrupted:terminated:disposed:next:)' is unused: Did you forget to call start on the producer?

代码:

    func callwebservice(dataDictionary:[String: String]? , urlString: String){
    print("******* dictionary = \(dataDictionary)")
    let boundary = "Boundary-\(NSUUID().UUIDString)"
    let request = NSMutableURLRequest(URL:NSURL(string: urlString)!);
    request.HTTPMethod = "POST"
    request.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
    let body = NSMutableData();
    if dataDictionary != nil {
        for (key, value) in dataDictionary! {
            body.appendData(NSString(format:"--\(boundary)\r\n").dataUsingEncoding(NSUTF8StringEncoding)!)
            body.appendData(NSString(format:"Content-Disposition: form-data; name=\"\(key)\"\r\n\r\n").dataUsingEncoding(NSUTF8StringEncoding)!)
            body.appendData(NSString(format:"\(value)\r\n").dataUsingEncoding(NSUTF8StringEncoding)!)
            body.appendData(NSString(format:"--\(boundary)\r\n").dataUsingEncoding(NSUTF8StringEncoding)!)

        }
    }
    request.HTTPBody=body

    let requestType =  NSURLSession.sharedSession().rac_dataWithRequest(request)
    requestType.on(started: {
        print("Started")
        }, event: { event in
            print("Event: \(event)")
        }, failed: { error in
            print("Failed: \(error)")
        }, completed: {
            print("Completed")
        }, interrupted: {
            print("Interrupted")
        }, terminated: {
            print("Terminated")
        }, disposed: {
            print("Disposed")
        }, next: { value in
            print("Next: \(value)")
    })
}

您需要调用 .start() 来获取信号。现在它只是一个 SignalProducer。在 on(…) 调用后添加 .start()