Swansea's goal-scorers Jason Scotland and Jordi Gomez celebrate
Swansea ended Doncaster's eight-match unbeaten run thanks to goals from Jason Scotland and a brace from Jordi Gomez.
James Coppinger had put Doncaster ahead on 11 minutes after Dorus de Vries could only parry Paul Heffernan's shot.
James O'Connor bundled stand-in Swansea captain Alan Tate over in the box, and Scotland slotted home from the spot.
Gomez's deflected shot made it 2-1 and Rovers later had Richie Wellens sent off for a second yellow before Gomez sealed the win in injury-time.
Swansea manager Roberto Martinez: "It was the hardest game we've had this season.
"I know we've been very stylish at times and probably been more stylish, but in terms of what was needed after the Watford performance was a reaction and the ingredients that were missing against Watford, we had.
"We went 1-0 down and were playing a side that I felt is the most confident side we have played at home.
"To come back and show that character and to score three fantastic goals and be worthy winners, that's without a doubt the best performance of the season."
Doncaster Rovers manager Sean O'Driscoll: "I can't quite make out whether it was a difficult game for [the referee] or whether he over-reacted because he was certainly quick with the yellow cards.
"Two of them mean a red so there is little to say about Wellens being sent off although his second booking was a little soft.
"I am a little disappointed at cries of 'cheat' when James Coppinger was injured.
"The lad is now in hospital having a brain scan after suffering possible concussion.
"With regards to the football it was a fair result and Swansea are probably equipped better than most to come up a division and do well.
"You have to stamp some authority on the game right at the beginning but we didn't start very well despite scoring a goal.
"We ended up struggling to close them down. It was difficult for us as this is a hard place to come."
Swansea City: de Vries, Rangel, Williams, Serran, Tate, Dyer (Tudur Jones, 88), Britton, Gomez, Allen (Bauza 67), Gower, Scotland. Subs not used: Orlandi, Bessone, Butler.
Goals: Scotland 28 (pen), Gomez 71
Booked: Gomez, Rangel
Doncaster Rovers: Sullivan, O'Connor, Van Nieuwstadt, Hird, Chambers, Spicer (Byfield 79), Wellens, Stock, Woods, Coppinger (Price 45), Heffernan (Shiels, 79). Subs Not Used: Lockwood, Wilson
Bookmark with:
What are these?