The Ospreys extended their unbeaten run to five matches to go top of the RaboDirect Pro12 League with a 26-21 victory at the Liberty Stadium.
The Welsh side were indebted to first-half tries from Barry Davies and Hanno Dirksen and 16 points from man of the match Dan Biggar.
But Connacht made it a difficult evening for the Ospreys.
Skipper Gavin Duffy scored two tries and Niall O'Connor earning the Irish side a losing bonus point at the end.
Five wins for the Ospreys, who are without 10 players on World Cup duty, marks their best start in the league for seven seasons.
For Connacht it ended a three-match winning sequence.
Both sides made a cagey start with four line-outs in the first five minutes. But the fourth was significant after Biggar had kicked into the right corner.
Connacht won the line-out but Niall O'Connor was forced into a pressure kick which was collected by skipper Justin Tipuric. The ball was moved quickly to the left and centre Tom Isaacs provided full-back Barry Davies with the try-scoring pass as he went in the left corner.
Biggar, who became the Ospreys record points scorer in Celtic League rugby breaking Gavin Henson's record of 580, put over the conversion as the Ospreys led 7-0 after six minutes.
The Irish province had a chance to respond but wing Tiernan O'Halloran's pass to full-back Gavin Duffy, who had a free run in, went straight into touch.
The Ospreys had the chance to extend their lead when Connacht number eight John Muldoon transgressed a ruck after a half break from the lively Rhys Webb. But Biggar's penalty attempt rebounded off the left upright.
The home side had plenty of ball in hand but it was Connacht who levelled the scores on 24 minutes when pressure led to Duffy being put over in the right corner for the converted try.
But a penalty from a scrum 35 metres out was kicked by Biggar to restore the Ospreys' lead on 30 minutes.
And there was more to come for the Ospreys, if in fortuitous circumstances. Biggar put up a big up-and-under from a free kick, which Tipuric tried to catch but it rebounded off his shoulder straight into Dirksen's hands and the wing had a free run in for the second try.
Connacht had the final say of the half with O'Connor kicking a penalty as Ospreys led 17-10 at the break.
A high tackle by Ian Gough gave Connacht a chance to further eat away at the home lead but O'Connor missed his 45th-minute effort.
On 55 minutes the Ospreys found themselves down to 14 men when Ian Gough was sin-binned by the referee on the intervention of assistant referee Wayne Davies.
But down a man the Ospreys seemed to raise their game and earned a penalty after Barry Davies was impeded trying to regather a kick ahead. That was kicked by Biggar from just inside the opposition half.
However, Connacht fought back with a neat try for Duffy who latched onto O'Connor's neat kick to the left corner as the Ospreys lead was reduced to 20-10 on 62 minutes.
Back to 15 men the Ospreys went two scores ahead when Biggar put over his third penalty from close to the touchline after the Irishmen had been blown up for not releasing at a ruck.
But that was cancelled out by an O'Connor drop-goal just a minute from normal time, although Biggar kicked a fourth penalty four minutes into injury time.
Connacht did have a penalty in the 88th minute from Connor to secure the losing bonus point.
Ospreys: B Davies; R Fussell, T Isaacs, A Bishop, H Dirksen; D Biggar, R Webb; D Jones, R Hibbard, A Jarvis, I Gough, I Evans, T Smith, J Tipuric (capt), J Thomas.
Replacements: M Davies, C Griffiths, J Rees, J King, J Bearman, M Morgan, S Parker, K Phillips.
Connacht: G Duffy (capt), B Tuohy, E Griffin, H Fa'afili, T O'Halloran, N O'Connor, F Murphy; B Wilkinson, E Reynecke, D Rogers, M Swift, M McCarthy, TJ Anderson, J O'Connor, J Muldoon.
Replacements: A Flavin, R Loughney, S Maguire, D Gannon, R Ofisa, P O'Donohoe, M Jarvis, J Loxton.
Referee: Stefano Penne (FIR)