跳到主要内容

卡了我三天的报错,最后是两个引号

阿灿
阿灿

· 阅读约 2 分钟

这周基本就干了一件事,跟一串 401 死磕。

周一师傅把老后台一个图片上传的地方丢给我,说很简单,把之前那个模块的东西拿过来改改就行。我心里想这也太轻松了吧!然后我就开始抄。抄完改了个接口地址就跑了。

然后就是 401。

401 我认识!不就是没权限吗,token 的问题。我当时还挺淡定,因为我们的 token 一天过期一次,我以为是过期了,就重新登录了一遍。还是 401。

然后我怀疑是地址写错了。我把地址粘到浏览器里看了一下午。好家伙,浏览器直接给我下载了一个 json 文件下来,吓我一跳,我以为把服务器点坏了。

然后我就开始问 AI 了。它给我列了好几种可能,什么 token 没带上、拦截器没生效、跨域、后端白名单。我一条一条试。试到晚上八点多还是 401。那天师傅早走了,我也不好意思给他发消息,就自己在那慢慢得试,试到九点半才回宿舍。

周二还是 401。我把网络面板打开看了一百遍,那个红色的 401 就挂在那,看一次烦一次。

周三晚上师傅还没走,我实在憋不住了,我说师傅我这个 token 好像带上了,但它还是 401。他说你把请求头打出来给我看一眼。

我打印了一下,我俩凑一块看。

Authorization: Bearer "eyJhbGci..."

就那个引号。

我存 token 的时候用了 JSON.stringify,取的时候直接取了,没 parse,所以那两个引号一直在里面。后端拿到一个带引号的 token,当然认不出来,就当没带。老的那个模块为什么没事呢,因为老模块是登录完直接把 token 存到一个变量里用的,根本没走本地存储。我抄的时候完全没往这想。

我把引号一删,接口通了。

就通了???我在那愣了得有半分钟。两个引号。两个引号!

卡了我三天,问了 AI 七八次,试到晚上九点半,就为了两个引号。说实话当时又想笑又想哭。

然后我把改的地方提交上去(commit),commit 信息我就写了个 fix。师傅过来说你 commit 写详细点,不然以后谁看的懂。行吧,下次写详细点。

明天他说要教我自己写那个上传接口,我还挺期待的!

这周就这样,绝了。

阿灿
阿灿

大专在读,实习中,Cursor 新手。记录每天学到的东西!

查看主页 →