Mark Giordano had a goal and two assists, leading the Calgary Flames to a 3-1 win over the Vancouver Canucks on Saturday night.

Garnet Hathaway and Andrew Mangiapane also scored and Mike Smith made 27 saves for the Flames, who snapped the Canucks' three-game winning streak.

More Images
Calgary Flames' Garnet Hathaway (21) celebrates his goal with teammates during the second period of an NHL hockey game against the Vancouver Canucks on Saturday, March 23, 2019, in Vancouver, British Columbia. (Ben NelmsThe Canadian Press via AP)

Mark Giordano had a goal and two assists, leading the Calgary Flames to a 3-1 win over the Vancouver Canucks on Saturday night.

Calgary Flames' TJ Brodie (7) checks Vancouver Canucks' Tyler Motte (64) during the second period of an NHL hockey game Saturday, March 23, 2019, in Vancouver, British Columbia. (Ben NelmsThe Canadian Press via AP)

Calgary opened the scoring 9:44 into the first period after Derek Ryan sliced a pass to Giordano from down low. The defenseman collected the puck on his tape and fired a snap shot into the top-left corner of the net over a diving Markstrom.

Calgary Flames' Johnny Gaudreau (13) falls to the ice after being high-sticked by Vancouver Canucks' Bo Horvat during the second period of an NHL hockey game Saturday, March 23, 2019, in Vancouver, British Columbia. (Ben NelmsThe Canadian Press via AP)

Giordano helped out once again midway through the third, flipping a cross-ice pass to Mangiapane high in the slot. The left wing sent a slap shot flying past Markstrom into the Vancouver net.

Vancouver Canucks goaltender Jacob Markstrom (25) makes a save against Calgary Flames' Mikael Backlund (11) during the first period of an NHL hockey game Saturday, March 23, 2019, in Vancouver, British Columbia. (Ben NelmsThe Canadian Press via AP)

UP NEXT

Vancouver Canucks goaltender Jacob markstrom (25) makes a save against Calgary Flames' Derek Ryan (10) during the first period of an NHL hockey game Saturday, March 23, 2019, in Vancouver, British Columbia. (Ben NelmsThe Canadian Press via AP)

Vancouver Canucks goaltender Jacob markstrom (25) makes a save against Calgary Flames' Derek Ryan (10) during the first period of an NHL hockey game Saturday, March 23, 2019, in Vancouver, British Columbia. (Ben NelmsThe Canadian Press via AP)

Brock Boeser had a power-play goal for the Canucks, who are six points behind Colorado for the final wild-card spot in the Western Conference. Jacob Markstrom had 28 saves.

Calgary Flames' Garnet Hathaway (21) celebrates his goal with teammates during the second period of an NHL hockey game against the Vancouver Canucks on Saturday, March 23, 2019, in Vancouver, British Columbia. (Ben NelmsThe Canadian Press via AP)

Calgary Flames' Garnet Hathaway (21) celebrates his goal with teammates during the second period of an NHL hockey game against the Vancouver Canucks on Saturday, March 23, 2019, in Vancouver, British Columbia. (Ben NelmsThe Canadian Press via AP)

Calgary opened the scoring 9:44 into the first period after Derek Ryan sliced a pass to Giordano from down low. The defenseman collected the puck on his tape and fired a snap shot into the top-left corner of the net over a diving Markstrom.

The goal marked Giordano's 70th point of the season and extended his point streak to seven games. He has two goals and eight assists since March 10.

With less than three minutes to go in the second period, Giordano got the puck to Hathaway in the slot. The right wing got off a back-handed shot and the puck hit Markstrom's right pad before dribbling into the net.

Calgary Flames' TJ Brodie (7) checks Vancouver Canucks' Tyler Motte (64) during the second period of an NHL hockey game Saturday, March 23, 2019, in Vancouver, British Columbia. (Ben NelmsThe Canadian Press via AP)

Calgary Flames' TJ Brodie (7) checks Vancouver Canucks' Tyler Motte (64) during the second period of an NHL hockey game Saturday, March 23, 2019, in Vancouver, British Columbia. (Ben NelmsThe Canadian Press via AP)

Giordano helped out once again midway through the third, flipping a cross-ice pass to Mangiapane high in the slot. The left wing sent a slap shot flying past Markstrom into the Vancouver net.

The Canucks were able to get on the board early in the third period after Calgary's Johnny Gaudreau was called for tripping, giving Vancouver a 4-on-3 power play. Boeser capitalized on the advantage 38 seconds into the frame, firing a wrister under Smith's glove. Boeser has four goals and six assists in his last nine games.

NOTES: A small fracas broke out with less than two minutes to go after Canucks defenseman Alex Edler hit Smith along the end boards, sending the goalie — and his helmet — flying. Fists flew briefly before Edler was given a two-minute penalty for goaltender interference. ... Calgary was without C Sam Bennett, who's recovering from an upper-body injury. ... Vancouver's star rookie Elias Pettersson had an assist on Boeser's goal, extending his point streak to five games. ... Saturday's win marked the Flames' 1,700th franchise victory.

Calgary Flames' Johnny Gaudreau (13) falls to the ice after being high-sticked by Vancouver Canucks' Bo Horvat during the second period of an NHL hockey game Saturday, March 23, 2019, in Vancouver, British Columbia. (Ben NelmsThe Canadian Press via AP)

Calgary Flames' Johnny Gaudreau (13) falls to the ice after being high-sticked by Vancouver Canucks' Bo Horvat during the second period of an NHL hockey game Saturday, March 23, 2019, in Vancouver, British Columbia. (Ben NelmsThe Canadian Press via AP)

UP NEXT

Flames: host Los Angeles on Monday night.

Canucks: host Columbus on Sunday night.

More AP NHL: https://apnews.com/NHL and https://twitter.com/AP_Sports

Vancouver Canucks goaltender Jacob Markstrom (25) makes a save against Calgary Flames' Mikael Backlund (11) during the first period of an NHL hockey game Saturday, March 23, 2019, in Vancouver, British Columbia. (Ben NelmsThe Canadian Press via AP)

Vancouver Canucks goaltender Jacob Markstrom (25) makes a save against Calgary Flames' Mikael Backlund (11) during the first period of an NHL hockey game Saturday, March 23, 2019, in Vancouver, British Columbia. (Ben NelmsThe Canadian Press via AP)

Vancouver Canucks goaltender Jacob markstrom (25) makes a save against Calgary Flames' Derek Ryan (10) during the first period of an NHL hockey game Saturday, March 23, 2019, in Vancouver, British Columbia. (Ben NelmsThe Canadian Press via AP)

Vancouver Canucks goaltender Jacob markstrom (25) makes a save against Calgary Flames' Derek Ryan (10) during the first period of an NHL hockey game Saturday, March 23, 2019, in Vancouver, British Columbia. (Ben NelmsThe Canadian Press via AP)