Cobb, who did not allow any runs over 1 2/3 innings in his first start against Minnesota, gave up two hits, struck out one and walked one.
"I liked being able to throw a lot of first-pitch curveballs for a strike and also in the dirt for swings and misses and changeups as well," said Cobb, who threw 47 pitches.
"Like the last outing, my fastball location isn't exactly where I want it, but I can see that trending in the right direction, so I'm happy with that," he said.
The right-hander allowed back-to-back singles to Melky Cabrera and Jose Bautista in the first, but then retired eight straight batters, seven on groundballs. Cobb was pulled one batter into the fourth.
"His ball really moves," Tampa Bay manager Joe Maddon said. "I can't even imagine it in the batter's box, but from the side, you could see. And then the hitters reflected that by how they were making contact or no contact against him."
Blue Jays starter Mark Buehrle made his second start of the spring. The left-hander gave up one run and four hits in three innings.
Blue Jays: Buehrle threw 45 pitches, struck out two and walked one. The four-time AL All-Star said he has not felt better on the mound since last season.
"Today was the best I've felt," he said. "That's the biggest thing to take out of today. Health-wise, I felt great. I was pounding the strike zone and felt like everything was working for me."
Rays: Cobb worked with catcher Ryan Hanigan for the first time in a game.
Hanigan is in his first year with the Rays after he was traded to Tampa Bay in December from the Cincinnati Reds in a three-way deal. He said his main objective was to use the time to build confidence and get on the same page with Cobb.
"I felt like it was good," Hanigan said. "There was one situation where I wasn't going to let him go to something and he agreed with me and it worked out. Just that helped build a little bit, like, `OK, (he) can trust (me) with what I'm doing. Stuff like that is huge."
There was a replay review in the bottom of the ninth. With one on and one out, Munenori Kawasaki grounded to Rays first baseman Cameron Seitzer, who threw the ball to pitcher Matt Andriese covering the bag. Kawasaki was called out in a close play.
After the play, first base umpire Eric Cooper motioned to plate ump Phil Cuzzi to take another look.
Following a short review, the call was confirmed.
"I really thought he was out," Maddon said. "I could have gotten kicked out if he had changed that one."
Blue Jays: Center fielder Colby Rasmus missed his fifth straight game with a sore neck. He was taken out of the lineup on March 2 prior to a game against the Yankees as a precaution after he woke up with muscle pain.
After days of lingering tightness, Rasmus decided to get a cortisone shot, which has helped provide relief. Rasmus said he expects to resume baseball activities on Saturday.
Manager John Gibbons said right-hander J.A. Happ will miss a few more days because of back inflammation.
Happ felt the problem on Feb. 26 after his first start against the Phillies and reaggravated it on March 3 after walking five and recording just one out in his second start against the Twins.
Gibbons said Happ wanted to pitch through the pain, but he didn't feel risking further injury was a good idea.
"We forced him to shut it down," Gibbons said. "If you keep pushing it, you can aggravate it worse and next thing you know you're on the (disabled list)."
With his father, Blue Jays hitting coach Kevin Seitzer, watching from the opposing dugout, Rays infield prospect Cameron Seitzer hit a long two-run homer in the ninth inning that landed on top of the batting cages in right field.
Cameron Seitzer batted .246 with six home runs for Double-A Montgomery last season, and said it was a special moment. He said it was the first time he had played against his father at any level.
"He was clapping for me when I stepped on home plate and I winked at him," he said. "It was a good time."
BETEMIT CLEARED TO PLAY
Infielder Wilson Betemit joined the Rays for the first time on Thursday after his work visa was delayed in his native Dominican Republic. Betemit, a non-roster invitee, could play on Saturday against Pittsburgh or Sunday against the Yankees.
Betemit signed a minor league contract with Tampa Bay on Feb. 4 after spending the last two seasons with the Baltimore Orioles. The 32-year-old was limited to just six games last year because of a season-ending knee injury.
Right-handed reliever Juan Carlos Oviedo is the last of three Dominican-born players on the Rays still dealing with visa issues and has not joined the team.