A man wearing body armour withstood two Taser shocks from a Calgary police officer before he was subdued, ending a chase that resulted in the discovery of $30,000 worth of cocaine.

The incident began when two men met in the parking lot of Calgary's Chinook Centre on Thursday, allegedly to exchange illegal drugs for money.

Security officers spotted the men acting suspiciously inside a 2008 Toyota Corolla. One of the men left the car, while the other drove the vehicle to a car wash across the street.

Police say the driver then left the car and ran down the street with a "black commuter-style bag" before entering a Vietnamese restaurant. An officer tracked down the man and a violent struggle ensued, an employee at the restaurant told CTV Calgary.

"I saw him hitting the police officer, putting him in a headlock and hitting him," said Sang Khounthavong of Golden Bell Saigon Restaurant.

The two men continued to fight outside the restaurant, and police allege the suspect attempted to grab the officer's gun several times. The officer fired his Taser twice, but it had no effect on the man. After the suspect was handcuffed, the officer discovered he was wearing a bullet-proof vest.

Police say it has become increasingly common to find suspects wearing body armour, and police are now trained to deal with the extra protection.

"We've seen more and more body armour being worn by offenders in the city of Calgary and across the country," acting Insp. Terry Larson told reporters Friday.

Investigators allege the suspect's black bag contained $30,000 worth of cocaine, along with $150 worth of marijuana and hundreds of dollars in cash. A search of the car resulted in the seizure of another weapon, allegedly belonging to the other suspect.

"Both guns were loaded," said Larson. "One was a .45 with several rounds and one was a .40-calibre with several rounds."

Claus Decker Pearce, 23, Brooks, Alta., is charged with numerous offences, including assaulting a peace officer and carrying a concealed weapon.

Kovan Yasin, 26, of Calgary, has also been charged with several offences, including two counts of carrying a concealed weapon.

With a report by CTV Calgary's Reg Hampton