Cabrera, the Toronto Blue Jays outfielder recovering from left knee tendinitis, went 1-for-3 over seven innings in the first triple-A game on his rehab assignment, a 2-1 win over the Toledo Mud Hens Friday night.
He did not take his left field position for the eighth inning after a 46-minute rain delay.
The hit, a sharp liner in the third inning, appeared to whistle just past the head of Toledo pitcher Jon Link and into centre field. Link, however, said after the game that the ball struck him.
"It got me," said Link, who appeared in nine Major League games in 2010 with the Los Angeles Dodgers. "It went off the side of my head. It didn't blur me or daze me. If it was an inch to the left, I would have been in a world of trouble."
Cabrera, who initially flinched and held his hands up to his head thinking he had injured Link, left the Buffalo clubhouse early and was unavailable for comment.
"I didn't see his reaction," Link said. "I was trying to get out of the way. That ball was coming back in a hurry. When I first threw it, it looked like he was going to take it. He sure didn't take it."
Buffalo manager Marty Brown had a balanced view of Cabrera's overall performance.
"He moved around the outfield real good," Brown said. "He still looks a little bit hampered on the bases. He didn't look his normal self. But that's not to be expected right away."
Brown did not provide a timetable for Cabrera's return to Toronto.
"I'd like to evaluate him after I see him for a few games rather than just one," Brown said. "It wasn't like when he's totally healthy."
Cabrera, who has been on Toronto's disabled list since June 27, also flied out to left field in the first inning and grounded out to second base in the fifth. In the field, Cabrera handled three fly balls without any trouble.
Brown decided on keeping Cabrera off the wet field once play resumed after the rain delay.
"Why take a chance on him slipping and having a setback?" Brown said. "I would have loved to see him hit one more time, but it's not worth the risk."
Prior to his injury, Cabrera played in 78 games with Toronto and batted .278 with three homers and 29 RBIs. He started his rehab by playing two games with Dunedin and three with double-A New Hampshire before coming to Buffalo. In five games in the lower rungs of the minor leagues, Cabrera batted .294 with five hits in 17 at-bats.
The game marked Cabrera's first triple-A appearance since playing in 15 contests for the Scranton/Wilkes-Barre Yankees in 2008.
Buffalo took a 2-0 lead in the first inning as Mauro Gomez hit his International League-leading 26th home run, a two-run shot that scored Munenori Kawasaki.