Canadian Prime Minister Justin Trudeau has defended himself after accusing a woman at a political event of "racism".

Mr Trudeau was speaking at a corn roast about 50km (30 miles) south of Montreal when he was interrupted by a heckler.

A woman repeatedly shouted questions at the prime minister about costs relating to an influx of asylum seekers entering the country.

Critics have accused Mr Trudeau of going too far with his response.

The prime minister did not respond directly to the criticism on Monday, but said he will "be very clear when people are trying to push politics of fear and indeed, intolerance".

"That's something Canadians expect of me," he said.

The Canadian Press reported that Ontario's Immigration Minister, Lisa MacLeod, said on Monday that the prime minister "debases the debate that we're having" on asylum seekers in responding to critics by calling them racist or un-Canadian.

A video of the altercation, which took place last Thursday, has been widely shared online.

The clip shows a woman yelling from the back of the crowd at Mr Trudeau.

She asks whether the federal government will pay back the province of Quebec for the millions of dollars it has spent to handle thousands of asylum seekers that have crossed into the province over the past 18 months.

Since 2017, some 30,000 migrants have crossed the border illegally into Canada, where they turn themselves over to police in order to make asylum claims.

Both the provinces of Quebec and Ontario are asking the Trudeau government to foot the entire bill for the costs related to the asylum seekers.

The woman, speaking in French, repeatedly asks Mr Trudeau when he will refund "your illegal immigrants".

He responds: "Madame, one of the important things in politics to listen."

The woman, who has not been identified, says he has not answered her question.

The back and forth continues before the prime minister snaps that "intolerance towards immigrants has no place in Canada".

She then asks whether he is tolerant of the "Quebecois de souche" (old-stock Quebecers), and approaches the prime minister as he wades through a crowd of supporters.

There, he tells her that "your racism has no place here".

She is soon approached by a police officer who asks her whether she has identification and briefly grabs her arm.

She tells him to let go and says she has the right to ask questions of the prime minister.

The woman refuses to identify herself to police and eventually walks away.

She also interacts repeatedly with the man behind the camera who is filming the entire interaction.

He is heard asking police for their badge numbers.

Unconfirmed reports online suggested members of an anti-immigrant group were planning to disrupt the event.

Mr Trudeau's comments garnered some backlash online among critics who felt he mishandled the incident.