Leyton Orient went closest to scoring in the first half. Leyton Orient hit the bar and the ball looked like it should have crossed the line, but somehow Lucas managed to tip it away, and then saved their rebound shot.
On 51 minutes Swindon were awarded a penalty after a foul on Alan Sheehan. Billy Paynter took the kick, and although the 'keeper nearly got a hand to it the ball reached the back of the net to make it 1-0.
On 67 minutes Leyton Orient pulled level again with a goal from Sean Thornton who scored straight from a free kick just outside the box.
On 76 minutes Charlie Austin put Swindon back into the lead with a close range goal after a Simon Ferry cross.
Then on 85 minutes Austin scored again with his 4th goal in 3 games also from close range.
Leyton Orient were then reduced to ten men for the final couple of minutes before they pulled a late goal back from Sean Thornton who again scored from outside the box to make it 3-2.
The win moves Swindon back up into 6th place with two games in hand going into Saturday's away local derby at Bristol Rovers.