刘邦驻军霸上,还没有能和项羽相见,刘邦的左司马曹无伤派人对项羽说:“刘邦想要在关中称王,让子婴(ying)做丞相,珍宝全都被刘邦占有。”项羽大怒,说:“明天犒(kao)劳士兵,给我打败刘邦的军队!”这时候,项羽的军队40万,驻扎在新丰鸿门;刘邦的军队10万,驻在霸上。范增劝告项羽说:“沛公在崤山的东边的时候,对钱财货物贪恋,喜爱美女。现在进了关,不掠取财物,不迷恋女色,这说明他的志向不在小处。我叫人观望他那里的气运,都是龙虎的形状,呈现五彩的颜色,这是天子的气运呀!赶快攻打,不要失去机会。”
楚国的左尹项伯,是项羽的叔父,一向同留侯张良交好。张良这时正跟随着刘邦。项伯就连夜骑马跑到刘邦的军营,私下会见张良,把事情详细地告诉了他,想叫张良和他一起离开,说:“不要和(刘邦)他们一起死了。”张良说:“我是韩王派给沛公的人,现在沛公遇到危急的事,逃走是不守信义的,不能不告诉他。”于是张良进去,详细地告诉了刘邦。刘邦大惊,说:“这件事怎么办?”张良说:“是谁给大王出这条计策的?”刘邦说:“一个见识短浅的小子劝我说:‘守住函谷关,不要放诸侯进来,秦国的土地可以全部占领而称王。’所以就听了他的话。”张良说:“估计大王的军队足够用来抵挡项王吗?”刘邦沉默了一会儿,说:“当然不如啊。这又将怎么办呢?”张良说:“请您亲自告诉项伯,说刘邦不敢背叛项王。”刘邦说:“你怎么和项伯有交情?”张良说:“秦朝时,他和我交往,项伯杀了人,我使他活了下来;现在事情危急,幸亏他来告诉我。”刘邦说:“他和你年龄谁大谁小?”张良说:“比我大。”刘邦说:“你替我请他进来,我要像对待兄长一样对待他。”张良出去,邀请项伯。项伯就进去见刘邦。刘邦捧上一杯酒向项伯祝酒,和项伯约定结为儿女亲家,说:“我进入关中,一点东西都不敢据为己有,登记了官吏、百姓,封闭了仓库,等待将军到来。派遣将领把守函谷关的原因,是为了防备其他盗贼进来和意外的变故。我日夜盼望将军到来,怎么敢反叛呢?希望您全部告诉项王我不敢背叛项王的恩德。”项伯答应了,告诉刘邦说:“明天早晨不能不早些亲自来向项王道歉。”刘邦说:“好。”于是项伯又连夜离去,回到军营里,把刘邦的话报告了项羽,趁机说:“沛公不先攻破关中,你怎么敢进关来呢?现在人家有了大功,却要攻打他,这是不讲信义。不如趁此好好对待他。”项王答应了。
刘邦第二天早晨带着一百多人马来见项王,到了鸿门,向项王解释说:“我和将军合力攻打秦国,将军在黄河以北作战,我在黄河以南作战,但是我自己没有料到能先进入关中,灭掉秦朝,能够在这里又见到将军。现在有小人的谣言,使您和我发生误会。”项王说:“这是沛公的左司马曹无伤说的,如果不是这样,我怎么会这么生气?”项王当天就留下刘邦,和他饮酒。项王、项伯朝东坐,亚父朝南坐。亚父就是范增。刘邦朝北坐,张良朝西陪侍。范增多次向项王使眼色,再三举起他佩戴的玉玦暗示项王,项王沉默着没有反应。范增起身,出去召来项庄,说:“君王为人心地不狠。你进去上前为他敬酒,敬酒完毕,请求舞剑,趁机把沛公杀死在座位上。否则,你们都将被他俘虏!”项庄就进去敬酒。敬完酒,说:“君王和沛公饮酒,军营里没有什么可以用来作为娱乐的,请让我舞剑。”项王说:“好。”项庄拔剑起舞,项伯也拔剑起舞,常常张开双臂像鸟儿张开翅膀那样用身体掩护刘邦,项庄无法刺杀。
于是张良到军营门口找樊哙。樊哙问:“今天的事情怎么样?”张良说:“很危急!现在项庄拔剑起舞,他的意图常在沛公身上啊!”樊哙说:“这太危急了,请让我进去,跟他同生死。”于是樊哙拿着剑,持着盾牌,冲入军门。持戟交叉守卫军门的卫士想阻止他进去,樊哙侧着盾牌撞去,卫士跌倒在地上,樊哙就进去了,掀开帷帐朝西站着,瞪着眼睛看着项王,头发直竖起来,眼角都裂开了。项王握着剑挺起身问:“客人是干什么的?”张良说:“是沛公的参乘樊哙。”项王说:“壮士!赏他一杯酒。”左右就递给他一大杯酒,樊哙拜谢后,起身,站着把酒喝了。项王又说:“赏他一条猪的前腿。”左右就给了他一条未煮熟的猪的前腿。樊哙把他的盾牌扣在地上,把猪腿放(在盾)上,拔出剑来切着吃。项王说:“壮士!还能喝酒吗?”樊哙说:“我死都不怕,一杯酒有什么可推辞的?秦王有虎狼一样的心肠,杀人惟恐不能杀尽,惩罚人惟恐不能用尽酷刑,所以天下人都背叛他。怀王曾和诸将约定:‘先打败秦军进入咸阳的人封作王。’现在沛公先打败秦军进了咸阳,一点儿东西都不敢动用,封闭了宫室,军队退回到霸上,等待大王到来。特意派遣将领把守函谷关的原因,是为了防备其他盗贼的进入和意外的变故。这样劳苦功高,没有得到封侯的赏赐,反而听信小人的谗言,想杀有功的人,这只是灭亡了的秦朝的继续罢了。我以为大王不应该采取这种做法。”项王没有话回答,说:“坐。”樊哙挨着张良坐下。坐了一会儿,刘邦起身上厕所,趁机把樊哙叫了出来。
刘邦出去后,项王派都尉陈平去叫刘邦。刘邦说:“现在出来,还没有告辞,这该怎么办?”樊哙说:“做大事不必顾及小节,讲大礼不必计较小的谦让。现在人家正好比是菜刀和砧板,我们则好比是鱼和肉,告辞干什么呢?”于是就决定离去。刘邦就让张良留下来道歉。张良问:“大王来时带了什么东西?”刘邦说:“我带了一对玉璧,想献给项王;一双玉斗,想送给亚父。正碰上他们发怒,不敢奉献。你替我把它们献上吧。”张良说:“好。”这时候,项王的军队驻在鸿门,刘邦的军队驻在霸上,相距四十里。刘邦就留下车辆和随从人马,独自骑马脱身,和樊哙、夏侯婴、靳强、纪信四人拿着剑和盾牌徒步逃跑,从郦山脚下,取道芷阳,抄小路走。刘邦对张良说:“从这条路到我们军营,不过二十里罢了,估计我回到军营里,你才进去。”
刘邦离去后,从小路回到军营里。张良进去道歉,说:“刘邦禁受不起酒力,不能当面告辞。让我奉上白璧一双,拜两拜敬献给大王;玉斗一双,拜两拜献给大将军。”项王说:“沛公在哪里?”张良说:“听说大王有意要责备他,脱身独自离开,已经回到军营了。”项王就接受了玉璧,把它放在座位上。亚父接过玉斗,放在地上,拔出剑来敲碎了它,说:“唉!这小子不值得和他共谋大事!夺项王天下的人一定是刘邦。我们都要被他俘虏了!”