A spectator yelling "doper!" hurled a cup of urine at Chris Froome, the Tour de France leader said, on Saturday's Stage 14 won by fellow British rider Stephen Cummings.
Froome blamed "very irresponsible" reporters for whipping up public opinion against him and his Sky team.
Some 50 kilometers (30 miles) into the stage from Rodez, the yellow jersey wearer said he spotted a roadside spectator acting bizarrely.
"I saw this guy just peering around and I thought, 'That looks a bit strange,'" he said. "As I got there he just sort of launched this cup toward me and said (in French) 'Doper!"
"No mistake, it was urine," he said. "That's unacceptable on so many levels."
Just as he did in winning the Tour for the first time in 2013, Froome has faced pointed questions about his dominant performance — and that of his team — along with insinuations of doping.
His Sky teammate Richie Porte said another person, also seemingly a spectator, thumped him with a "full-on punch" a few days earlier on a climb in the Pyrenees. Porte suggested journalists may be putting riders in danger by "whipping up all the rubbish that they are."
Froome echoed that thinking.
"I certainly wouldn't blame the public for this," he said. "I would blame some of the reporting on the race that has been very irresponsible.
"It is no longer the riders who are bringing the sport into disrepute now, it's those individuals, and they know who they are."
He refused to identify specific journalists or reports, but said: "They set that tone to people and obviously people believe what they see in the media."
Generations of dopers, none more famous than Lance Armstrong, have left trust in short supply in cycling and Froome's repeated assurances that he is clean have fallen on deaf ears.
"If this is part of the process we have to go through to get the sport to the better place, obviously I'm here, I'm doing it," he said. "I'm not going to give up the race because a few guys are shouting insults."
"Unfortunately this is the legacy that has been handed to us by the people before us, people who have won the Tour only to disappoint fans a few years later," he added.
Although such assaults remain rare, Froome is not the first rider in Tour history to have been doused by urine, nor is Porte the first to be punched. Still, the unpleasant affair put a dampener on a day when Froome extended his already comfortable race lead, with the Alps looming next week as the last major obstacle between him and a second victory in Paris.
Cummings got South African team MTN-Qhubeka its first win, on the day that South Africans celebrate as International Nelson Mandela Day.
Cummings ambushed two French riders, Romain Bardet and Thibaut Pinot, on a short flat section after the steep final climb of the 178-kilometer (111-mile) stage. The west-to-east route wound through plains and hills on the fringes of the Massif Central region, and swung through the breathtaking Tarn gorges.
"Fantastic," Cummings said of his win.
His team wore special helmets in Mandela's honor and met Saturday morning to concoct a winning strategy for a day that is meant to encourage South Africans to emulate his humanitarian legacy and to recognize the decades he spent fighting apartheid.
"It was a big motivation," Cummings said.
Bardet and Pinot reached the summit together on the short but very sharp final ascent, only for Cummings to speed past them and take the win on an airfield above the town of Mende.
Bardet said he and Pinot were guilty of watching each other too much, neglecting the danger from Cummings catching them from behind.
"He was very crafty," Bardet said. "Very disappointed."
There were changes in the overall standings.
Tejay van Garderen, who had been second overall, struggled on the final ascent and couldn't stay with Froome and Nairo Quintana, who had been third overall at the start of the stage.
Froome beat Quintana to the line with a finishing sprint. The Sky team leader now has an overall lead of 3 minutes, 10 seconds over Quintana, who vaulted into second place. Van Garderen is third, 3:32 behind Froome. And Froome also has the added advantage of having a teammate, Geraint Thomas, in sixth.
"Every little second will help," Froome said. "It puts us into a really strong place before going into the Alps."