I dont think thats a good idea. For example:
I have a very bad internet connection, and your app shows me the splash screen for seconds. So i normally think that app will crash, or something else. A better approach would be to do that in your MainViewController, and show the User a Spinner/Load Screen or something like that.
A good way to make async requests in swift is to use the (great) extension Alamofire. Especially when youre new to iOS Swift.
https://github.com/Alamofire/Alamofire
Then, in your ViewDidLoad make your request (in this case still as background Thread)
let priority = DISPATCH_QUEUE_PRIORITY_DEFAULT
dispatch_async(dispatch_get_global_queue(priority, 0)) {
// load here spinner / load screen
// alamofire request
Alamofire.request(.POST, "http://www.test.com/service", parameters: ["foo": "bar"]).responseJSON { (req, res, json, error) in
....
}