You will need to refactor this so that you’re not using a single, shared property of the parent class to figure out which of two concurrent requests you’re handling. That just isn’t going to work. Bottom line, retire this reqName property.
There are two obvious alternatives:
One solution is to just give these two requests two separate completion handler methods. I know it probably feels like you’re keeping it simple by having one method, but if you have big if-else blocks buried within this general response handling method, that’s a good indication that you should consider breaking it up.
If you’re determined to stay with a single response handling method, rather than relying upon some property shared by both of the two concurrent requests, you’ll instead want to look at the object that Alamofire response methods pass to their respective closures. Inside that object is a request property from which you can deduce which of the two responses you’re handling (e.g. looking at the request’s URL). Or capture some parameter you used when preparing the request in the response handling method.
The first option is probably best: It keeps your methods as simple as possible, each with a single responsibility, i.e. for parsing a particular response.