Ansgar Knauff and Daichi Kamada scored early in either half to give Eintracht a lead to build on at home in next Thursday's semi-final decider.
Article top media content
Frankfurt will take a narrow lead to Germany for their UEFA Europa League semi-final return against West Ham after a 2-1 win at the London Stadium.
1' Knauff heads in Borré cross
14' Bowen drive comes back off post
21' Antonio prods Hammers level
54' Kamada restores Frankfurt lead
78' Deflected Kamada effort hits post
90+2' Bowen's overhead kick clatters bar
Match in brief: Eagles take their chances
Entertainment was expected between two attack-minded sides, but a goal after 51 seconds was still a surprise, Ansgar Knauff heading in Rafael Borré's cross to silence the home fans. However, West Ham cleared their heads quickly and should have levelled when Jarrod Bowen burst through the middle only for his finish to ping back off a post.
The equaliser did arrive in the 21st minute, predictably from a set piece, with Kurt Zouma's header across goal turned over the line by Michail Antonio. Oliver Glasner's men were pegged back for much of the remainder of the first half but could have led at the break had Knauff not sliced wide with just Alphonse Areola to beat.
The Eagles were the more composed side after the interval and grabbed the winner from a flowing move, Daichi Kamada eventually turning in the rebound after Areola had parried Djibril Sow's 54th-minute shot.
The Japan midfielder also hit the post later on, either side of West Ham doing so twice – substitute Said Benrahma shaving the upright from distance before Bowen's spectacular overhead kick thumped the crossbar in added time.As it happened: West Ham 1-2 Frankfurt
Matthew Howarth, West Ham reporter
West Ham didn’t play poorly, but Eintracht's two goals at the London Stadium will irk David Moyes. Knauff was left in far too much space for the Eagles' early opener and it was a similar story for the visitors' second, with Sow allowed to march unchallenged through the Hammers' defence before Kamada's close-range finish. Even at 2-1, though, the tie remains finely poised.
Steffen Potter, Frankfurt reporter
It was said before that tonight's game might be more difficult for the Eagles than the Barcelona tie. They were certainly allowed fewer openings by West Ham than the Blaugrana managed and will be boosted by Kamada's beautifully crafted goal tonight. It was yet another disciplined and focused performance by Glasner's team, and if they can reproduce this next week, they will have another match in their schedule on 18 May.
David Moyes, West Ham manager: "[It's] not what we wanted. We didn't play well enough to get a result tonight, but it's still there – it's not gone. We'll go to the second leg probably not fancied and do what we can to still make it."
Michail Antonio, West Ham goalscorer: "Today wasn't one of our best performances. It was not how we wanted to start the game. We got control of the game and created some chances which we didn't take. It's all to play for. It's not over. We're in it to win it."
Kevin Trapp, Frankfurt goalkeeper: "I am not surprised by our performance. We can do this if we are fully focused, as we have often proved. Tonight was another highlight for us. We wanted to make the first step towards the final."
Ansgar Knauff, Frankfurt goalscorer: "I don't know if I am doing anything special. But, as against Barcelona, we put them under pressure right from the off. The early goal gave us a boost, of course. But their goal did not put us down – we recovered well from that."
Steffen Freund, RTL
"It was a wonderful evening of football, but not the game everyone expected. Both teams played good football, with Eintracht being better in possession than West Ham after the break and thus deserving of their win."
- Frankfurt have only failed to score in two of their last 20 Europa League matches.
- The Eagles have kept only one clean sheet in their last 19 Europa League games.
- Frankfurt have lost only three of their last 19 matches in the Europa League knockout phase (W7 D9).
- West Ham have won only two of their last eight matches in all competitions (D2 L4).
West Ham: Areola; Johnson, Dawson, Zouma, Cresswell; Souček, Rice; Bowen, Lanzini (Benrahma 66), Fornals; Antonio
Frankfurt: Trapp; Tuta, Hinteregger, Touré; Knauff, Sow, Rode, Kostić; Lindstrøm (Hauge 62), Kamada; Borré (Ache 90+3)