Former West Ham star Di Canio was sent off against local rivals Oxford, who twice took the lead through Constable after Matt Ritchie had equalised for the Robins.
Oxford took the lead in the 12th minute when Peter Leven put in a left-wing cross and Constable headed home from six-yards out.
Swindon levelled the score eight minutes later when Callum Kennedy curled a ball in for Ritchie to nod past goalkeeper Ryan Clarke. But the away side took the lead again in the 43rd minute when Leven set up Constable who slotted into the bottom right-hand corner from close range.
Fiery Robins boss Di Canio was sent off towards the end of the match by referee Mark Haywood for dissent.
Swindon rallied for an equaliser and Ritchie had a glorious chance in the last minute which was brilliantly saved and Oxford held on for their first away win of the season which moved them just outside the League Two play-off places.