TORONTO — For DeMar DeRozan and the Toronto Raptors, it was a tale of two halves.

Klay Thompson had 26 points while Kevin Durant added 25 as the Golden State Warriors held on for a wild 127-125 road win over the Raptors on Saturday night.

DeRozan finished with 42 points — cracking the 30-point plateau for a club-record 92nd time. After spotting Golden State a 27-point half-time lead, DeRozan and Co. outscored Golden State 71-46 in the second but fell agonizingly short of a monumental comeback win.

"We went out there and just played (all) out," DeRozan said. "We didn't think too much, we just went out there and played hard.

"We were just too antsy (in first half), jumping at everything they did, over-reacting. In the second half we just buckled down and stayed silent."

OG Anunoby added 17 points for Toronto (29-12), which suffered just its third home loss but finished a three-game homestand 1-2. Serge Ibaka, returning after a one-game suspension, had 14 points.

The defending-champion Warriors (league-best 35-9 record) earned their NBA-leading 19th road win and eighth straight victory over Toronto. Stephen Curry, the two-time league MVP, had 24 points in his return to Golden State's lineup after missing two games with an ankle injury.

"It's sore but it felt good enough to play," Curry said. "I don't feel limited out there but you just feel it.

It was a fun, competitive battle. Thankfully we got the win."

DeRozan's layup moved Toronto to within 121-119 with 2:08 left but Durant countered to give the Warriors a four-point lead. DeRozan then responded by cutting the Raptors' deficit to 123-122 with 1:03 to play.

After Curry missed the two free throws with 45.2 seconds left, Durant's field goal with 21.3 seconds left put Golden State ahead 125-122. Curry made up for his earlier misses by hitting two free throws with 2.5 seconds left.

Fred VanVleet's three-pointer at the buzzer rounded out the scoring as Toronto lost for the first time (11-1) when DeRozan scores 30 or more points.

The Raptors also dropped to 1-2 without point-guard Kyle Lowry, who's day-to-day with a bruised tailbone.

Toronto outscored the Warriors 35-27 in the third to cut their lead to 108-89 heading into the fourth. Jonas Valanciunas's dunk pulled the Raptors to within 94-83 with 3:16 remaining but Golden State ended the quarter on an 11-2 run.

Thompson had 20 points as Golden State finished the second on a 10-2 run for a 81-54 half-time lead. The Warriors controlled the quarter, outscoring the Raptors 38-19 while shooting 71.1 per cent from the field and holding a 22-4 edge in bench points.

The Air Canada Centre gathering got to cheer when Durant missed a dunk with 2:53 left to play. But Durant came right back with a jam to put Golden State ahead 73-52.

Thompson and Draymond Green had 10 points apiece while Durant added nine to lead Golden State to a 43-35 lead after the first, withstanding a 19-point effort by DeRozan. Trouble is, the remainder of Toronto's lineup accounted for the remaining 16 points as the Warriors shot a sizzling 73.9 per cent from the field (17-of-23) and 5-of-9 from three-point range.

"There are no moral victories in this league," Toronto head coach Dwane Casey said. "I'm not happy with a moral victory but we've got to can what we had in the second half . . . and play that way for 48 minutes.

"The way we played in the first half, we gave them way too much respect."

Casey was also critical of the officiating late in the game, especially when Toronto's Jakob Poeltl was called for fouling Curry with 45 seconds remaining. Curry missed both free throws with the Warriors leading 123-122 but Casey felt Poeltl cleanly blocked Curry's shot on the play.

"There were some tough calls in the second half," Casey said. "That (Poeltl call) was a back-breaker.

"We had the ball going the other way in that situation so I've got to look at that. But again, I thought our team really really competed at a high level in the second half once they believed, 'Hey. we can beat this team.' "

One call DeRozan questioned was his being whistled for turning the ball over on a wild scramble with three seconds remaining.

"It's frustrating," he said. "Being out there feels like you're playing five on eight.

"It's just what it feels like, period. Some of those calls were terrible."

Toronto was coming off an impressing 133-99 home win over Cleveland on Thursday night. Casey said the Raptors' last two home games proved they're capable of playing with the NBA's elite.

"They key word is believing," Casey said. "I thought against Cleveland the guys believed they could beat them.

"I learned that we can compete"

DeRozan said the win over Cleveland and second half versus Golden State weren't surprises to the Raptors players.

"(It's) what we've known all year," he said. "We fight."