The win will certainly boost the Emirates Lions' confidence as the northern hemisphere teams travel south in the next few weeks as the SA sides try to make the most of their home ground advantage.
The Johannesburgers built up an encouraging 24-13 lead in the first half with Edwill van der Merwe (wing) scoring a brace to add to an early try by Morne van den Berg (scrumhalf) and a penalty goal by Jordan Hendrikse (flyhalf), while they limited the hosts to a converted try and two penalty goals by Jarrod Evans (flyhalf).
The second half was a tougher affair as both teams tried hard to breach the defence, and in the end each team only managed to breach the defence once with Cardiff No 8 James Botham and Emirates Lions flank Vincent Tshituka, while Hendrikse slotted two more penalty goals to see the team to a rewarding victory.
Van den Berg scored the opening from pick and go in ruck in the second minute, and Cardiff hit back with a penalty goal four minutes later to reduce their deficit to four points.
Hendrikse added his second penalty goal in the eighth minute, but this was cancelled out by Cardiff as they added their second three-pointer to see them trail 10-6.
Van der Merwe then stole the show as he scored two tries within eight minutes following some enterprising play by the home team which saw them take a handy 24-6 lead.
Cardiff had an opportunity to score in the 24th minute as Will Boyde (flank) got close to the tryline only to be denied by the TMO. They made up for this soon after with Aled Summerhil diving over the tryline from good forward play in the minute 30th minute, and this saw this saw them trail 24-13, and the score remained at halftime.
The Welshmen came out firing in the second half with James Botham crossing the tryline three minutes after the restart and Evans added the conversion for the extra two points.
Hendrikse added back-to-back penalty goals shortly before the fourth quarter to give the side a 30-20 lead, and they received yet another boost in the 62nd minute as with Kirby Myhill was sent to the sin bin for foul play, reducing the visitors to 14 men.
Both teams tried hard to cross the tryline as the clock wound down, and it was the Emirates Lions who had the final say with Tshituka forcing his way over the chalk at the death to grab the bonus-point and seal victory for the hosts.
Emirates Lions 37 (24) – Tries: Edwill van der Merwe (2), Vincent Tshituka, Morne van den Berg. Conversions: Jordan Hendrikse (4). Penalty Goals: Hendrikse (3).
Cardiff Rugby 20 (13) – Tries: James Botham, Aled Summerhill. Conversions: Jarrod Evans (2). Penalty Goals: Evans (2).