Comments (3)
This isn't an issue with SwiftHTTP directly, but rather an issue with understanding async code design. I would recommend checking out these links:
They both explain how GCD works as well as how closures work, both which should help in understanding how to structure async code.
Also just off hand:
func foo(username: String, password: String, finished:((Bool) -> Void)) -> Void {
var url = "http://example"
var request = HTTPTask()
var parameters = ["username": username, "password": password]
request.requestSerializer = JSONRequestSerializer()
request.POST(url, parameters: parameters,
success: {
(response: HTTPResponse) in
if response.responseObject != nil {
finished(true)
},
}, failure: {(error: NSError) in
println(" error \(error)")
finished(false)
})
}
Then calling foo would look like:
foo("test", password: "test", finished: {(result: Bool) -> Void in
println("result is: \(result)")
//do more stuff now that I know the result
})
from swifthttp.
Thanks @daltoniam
I just want to point out the correct syntax for calling the function should be the following.
var result: Bool = false
foo(username.text, password: password.text, finished: {(result:Bool) -> Void in
println("result is: \(result)")
})
from swifthttp.
ah good catch, I change it to be proper. Thanks.
from swifthttp.
Related Issues (20)
- Count is unavailable: there is no universally good answer, see the documentation comment for discussion HOT 5
- HTTP.POST() not working after screen-lock (iOS 9.3.5)
- How to handler download progress?
- 'count' is unavailable: there is no universally good answer, see the documentation comment for discussion
- failed in xcode9.3
- Pinning Trusted certs or keys HOT 2
- POST method parameters lost in traffic
- Parameters not converted properly when using arrays HOT 2
- Cannot upload file
- Progress closure seems broken
- Post objects array to server
- Ambiguous use of 'init(urlString:parameters:headers:cachePolicy:timeoutInterval:)'
- Retry a task?
- Why OperationQueue support has been removed?
- SSL Pinning - Code=-999 "cancelled" HOT 1
- Linux support ?
- Timeout
- 'taskMap' Dictionary related crashes in Operation.swift file HOT 3
- Cannot consume as Swift package
- SSL Pinning - Always failing
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from swifthttp.