楚怀王接到了赵国的求援信后,和诸将商讨,决定西进关中,并和诸将约定,谁先入关中,谁就可以在秦国称王。
项羽在巨鹿之战获得重大胜利之后,立即率军向关中进发。不料来到函谷关,却见关门紧闭,关上有刘邦的守兵,原来刘邦已经攻入咸阳。项羽不由得大怒,命英布等人攻破函谷关,然后怒气冲冲地率领四十万大军一直推进到戏水以西(今陕西省临潼东北的戏水西岸),不久就在新丰鸿门驻扎下来。
这时,刘邦的十万兵马驻扎在灞上。刘邦的左司马曹无伤悄悄派人去向项羽打小报告,说刘邦想在关中称王,封原秦王子婴做宰相,要独占秦国所有的珍宝。项羽一听,大发雷霆,立刻下令第二天大宴士卒,准备出兵一举消灭刘邦的军队。
辅佐项羽的谋士范增非常赞成这么做。范增对项羽说:“当年刘邦还在山东的时候,贪财好色,现在他既然已先入了关,为了笼络人心,居然能够克制自己的欲望,不拿取财物,也不亲近女色,可见他的志向不小啊!”
对项羽有养育之恩的叔叔项梁,已在秦军渡河进攻赵国之前兵败被杀,项羽还有一个叔父项伯,担任楚国的左尹,现在也在项羽的军中。项伯得知项羽即将攻打刘邦,想到对自己有恩的张良此时正追随在刘邦身边,便星夜奔赴刘邦的军营,私下会见张良,叫张良赶紧跟着自己逃走。
张良说:“韩王拜托我辅佐沛公入关,现在眼看沛公大难临头,我自己偷偷溜走是不义的,至少应该告诉他一声。”
于是,张良就去向刘邦禀报。刘邦大为惊骇道:“哎呀!这可怎么办?”
张良问:“守住函谷关这样的馊主意是谁替你出的?”
刘邦说,是有个小人劝他这么做的,因为这么一来,各路诸侯进不来,整个秦地就可以全部归他统治。
张良又问:“你估计你的士兵打得过项王的军队吗?”
刘邦沉默不语,好一会儿才说:“打不过的。那现在我该怎么办啊?”
张良说:“我看不如请项伯回去代为求情,就说‘沛公不会做对不起项王的事儿’。”
刘邦得知项伯此刻就在自己的军营中,非常意外,赶紧询问张良怎么会和项伯有交情,又问张良与项伯相比,哪个年长哪个年少。
张良说:“项伯比我年长。”
“那你赶快替我去请他进来。”刘邦说,“我要以兄长之礼来接待他。”
项伯很快就进来了,刘邦恭恭敬敬奉上一杯酒为项伯祝福,热情相约要和项伯结为儿女亲家,然后再三解释道:“我拿下关中以后,只给官吏和百姓做了登记,不拿金银财宝,还封存了国库,天天都在等项将军来,哪里敢做对不起他的事儿呢?我之所以派遣将领守关,只是为了防备有盗贼出入及提防突然发生的变故……”
刘邦一边大喊冤枉,一边恳请项伯代他向项羽解释,强调自己绝不敢忘恩负义。
既然都已结成儿女亲家,早晚都是一家人,这还有什么问题?项伯满口答应了刘邦的请求,但也还是叮咛刘邦应该尽快亲自去向项王谢罪。
项伯回到项羽的军营,替自己的儿女亲家大说好话,果然让项羽打消了要攻打刘邦的念头。