read ECONNRESET at TLSWrap.onStreamRead (internal/stream_base_commons.js:209:20) { errno: -4077

简介: gitup 在国内有一个问题——打不开,然后此时,好多博客或者文章就会让你去使用 科学上网的工具,科学上网的工具呢,本身是走的是一个代理,通过代理来实现gitup可以访问。关于科学上网的工具请自行搜索。

本人在使用 node + koa来实现gitup的授权登录,但是在第二步获取access_token的时候报下面的错误了。关于gitup如何授权登录,有兴趣的同学可以百度一下,获取访问官网的api地址 https://docs.github.com/cn/developers/apps/building-oauth-apps/authorizing-oauth-apps#%E5%93%8D%E5%BA%94,这里面讲的很详细,本人就不在赘述了,要说的是在获取access_token时候遇到的问题,在这里看看能不能帮到有缘人。


20210622164911947.png


问题复现


20210622164408434.png


报的是这个错误,啥意思,从错误的名称来看,是连接重置了,但是连接为啥会重置呢?


gitup问题


gitup 在国内有一个问题——打不开,然后此时,好多博客或者文章就会让你去使用 科学上网的工具,科学上网的工具呢,本身是走的是一个代理,通过代理来实现gitup可以访问。关于科学上网的工具请自行搜索。


第二步获取access_token


获取第二步的代码很简单,如下:


 async gitUpCallBack(ctx: Application.ParameterizedContext) {
    // 获取之前的code
    const { code } = ctx.request.query as ILoginGitUpCallbackParams;
    // 获取到code后,请求gitup服务获取access_token
    try {
      const accessToken = await axios({
        method: 'post',
        url: 'https://github.com/login/oauth/access_token?client_id=client_id&client_secret=client_secret&code=' + code,
        headers: {
          'User-Agent': 'blog web'
        }
      })
      console.log(accessToken, '-----accessToken');
    } catch (err) {
      console.log(err, '-----err');
    }
    ctx.body = '获取成功!'
  }


上面的代码是一个koa的中间件,然后使用 axios来发送http请求。


错误排查


对于出现错误,我们最主要的是进行错误排查,我一开定位的是 axios是不是不能发送post请求,然后我使用原生的 http服务来发送,也是报相同错误的。


使用postman进行测试


对于同样的参数,我们使用postman进行测试,发现是好的,能够获取预期的结果(access_token)如下:


2021062217020481.png


然后使用postman获取node端的源码,发现和我们的是一样的,我们的代码是没有问题的。


寻找结果


我发现好多错误都类似,并且听到了 proxy 这个词,那我就想到我本身也是有代理的,postman可以请求成功是没有走代理的,所以最后关闭代理进行测试。(下面抽取两个简单的截屏)


20210622170729317.png


20210622170837528.png


关掉科学上网后会发现,我们的gitup已经打不开了,这里提供一个暂时的解决办法,修改hosts配置文件如下


进入gitup


我测试的时候是这么做的,


1.找一个ping gitup.com 延迟比较低的ip,寻找的方法是,输入网址:http://ping.chinaz.com/github.com


20210622171650819.png



2.打开C:\Windows\System32\drivers\etc 目录下面,找到我们的hosts文件,然后进行修改


20210622172233175.png


保存后,就可以打开gitup了,但是有一个缺陷,短暂时间可以用,但是长时间不行,需要频繁的进行修改,目前我还没有办法怎么长时间的访问gitup不挂,除了科学上网外


测试结果


20210622173414977.png


获取成功,大功告成!

相关文章
HBuilder报错文件查找失败:'./pages/info/info/info.vue' at main.js:3解决办法
HBuilder报错文件查找失败:'./pages/info/info/info.vue' at main.js:3解决办法
4497 0
|
6月前
|
前端开发 数据安全/隐私保护
Uncaught (in promise) Error: Request failed with status code 404 at createError (createError.js:
Uncaught (in promise) Error: Request failed with status code 404 at createError (createError.js:
225 2
|
7月前
|
JavaScript 数据安全/隐私保护 开发者
解决vue引发的报错-sub is not a function at vuex.esm.js:422:1跳转不了路由的问题
解决vue引发的报错-sub is not a function at vuex.esm.js:422:1跳转不了路由的问题
230 0
node Express.js node:internal/modules/cjs/loader:988 throw err; ^ Error: Cannot find module ‘
node Express.js node:internal/modules/cjs/loader:988 throw err; ^ Error: Cannot find module ‘
1120 0
node Express.js node:internal/modules/cjs/loader:988 throw err; ^ Error: Cannot find module ‘
在使用xlsx.js导入文件报错Error: Cannot read properties of undefined (reading ‘read‘) at FileReader.read
在使用xlsx.js导入文件报错Error: Cannot read properties of undefined (reading ‘read‘) at FileReader.read
在使用xlsx.js导入文件报错Error: Cannot read properties of undefined (reading ‘read‘) at FileReader.read
|
JavaScript
vue路由跳转报错Uncaught SyntaxError:Unexpected token ‘<‘ (at chunk-elementUI.aeed1b74.js:1:1)Uncaught Synt
vue路由跳转报错Uncaught SyntaxError:Unexpected token ‘<‘ (at chunk-elementUI.aeed1b74.js:1:1)Uncaught Synt
809 0
|
数据采集 JavaScript 中间件
Node.js的nrm报错:internal/validators.js:125 throw new ERR_INVALID_ARG_TYPE
Node.js的nrm报错:internal/validators.js:125 throw new ERR_INVALID_ARG_TYPE
326 0
|
JavaScript
Vue:Uncaught TypeError Object(...) is not a function at resetStoreState (vuex.esm-browser.js55021
Vue:Uncaught TypeError Object(...) is not a function at resetStoreState (vuex.esm-browser.js55021
505 0
Vue:Uncaught TypeError Object(...) is not a function at resetStoreState (vuex.esm-browser.js55021
|
JavaScript Shell 开发工具
报错:internal/modules/cjs/loader.js:984 throw err;
报错:internal/modules/cjs/loader.js:984 throw err;
858 0
报错:internal/modules/cjs/loader.js:984 throw err;
输入npm install 报错node-sass@4.13.0 postinstall:`node scripts/build.js` Failed at the node-sass@4.13.0
输入npm install 报错node-sass@4.13.0 postinstall:`node scripts/build.js` Failed at the node-sass@4.13.0错误详情
736 0
输入npm install 报错node-sass@4.13.0 postinstall:`node scripts/build.js` Failed at the node-sass@4.13.0