Salesforce LWC学习(十一) port 1717报错的处理

使用vs code开发lwc的步骤,通常为先创建项目(create project)然后授权一个org(authorize an org),授权以后我们通常便会download代码到本地或者Upload本地代码到服务器端。这几步当中authorize an org尤为的重要,如果没有授权成功,则无法download和upload代码,相当于项目使用vs code进行lwc开发中断。

我们使用vs code 在window下ctrl + shift + p选择authorize an org,系统会执行CLI语句然后进行默认浏览器的页面跳转,输入账号密码允许授权即授权成功,前几天偶遇这种authorize失败的情况,官方建议是杀死占用了的1717端口或者新建一个connected app然后更新一下配置的OauthLocalPort信息在sfdx-project.json文件中。

来自官方的解释如下: https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_troubleshoot_cancel_auth.htm#!

所以我们按照官方的指引一步一步来,首先先尝试杀死1717的端口号。首先以管理员的身份运行CMD,然后输入指令netstat -ano|findstr “1717”即可找到相对应的pid,途中的pid为32724

接下来就是要进行杀死32724这个pid, 两种方式去杀死,一种cmd 输入 taskkill /F /PID 32724,如果你不喜欢指令的方式找和杀也没有关系,第二种方式简单粗暴,ctrl + alt + delete打开task manager(任务管理器),找到名字是node.exe的杀了就是了。

这样搞定了以后通常的情况下基本就能解决了1717的问题,但是很奇葩的是我的这种case并没有搞定,所以继续按照官方的指引走第二条路,使用connected app方式搞定,参考链接为: https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_auth_connected_app.htm?search_text=connected%20app 这里如何创建connected app不多做解释,默认oauthLocalPort属性的值为1717,我们如果不声明情况下即这个值,这里我们需要按照上面的文档创建了一个对应的response为1919的端口然后我们在json中针对oauthLocalPort设置1919即可。

开开心心的弄好了第二个步骤,结果authorize仍然失败。

官方只说了这两种情况的处理,一脸懵逼的情况下群里小伙伴提示修改一下默认的浏览器,结果修改完以后真的成功了(原来用的chrome,后来修改成了其他)。。。估计是谷歌之前记录了一些错的session,导致跳转的时候跳不出来。

一波三折以后决定记录下来,以下的排错过程供小伙伴们参考,也希望小伙伴不用经历这种难熬的过程和步骤。篇中有错误地方欢迎指出,有不懂的欢迎留言。