https://github.com/cambecc/air

1、按照github中给出的步骤,执行到npm install,项目中的package.json包含了要安装的包的版本,但是安装的时候,pg和iconv模块提示gyp rebuild错误,一开始怀疑版本的问题(卸载nodejshttp://www.cnblogs.com/snandy/p/4418615.html,然后下载你所需的版本),但是把版本调整到package.json提示的版本还是不行,于是重新clone一份,把package.json文件去掉,一个一个的npm install,pg和iconv安装通过(具体问题不清楚,只能用这种笨办法),出现了第二个问题。

2、express 4中的模块相较于express 3 都单独出来了,需要单独安装,express3和4两者的差别挺大的。此时,需要制定安装express的版本,npm install express@3.8.4,此条命令即可。

3、在terminal中输入node server.js 8080 postgres://postgres:post@localhost:5432/air www.kankyo.metro.tokyo.jp,提示拒绝连接的问题(

2015-11-08T06:53:37.516Z - error: Error: connect ECONNREFUSED

at exports._errnoException (util.js:746:11)

at TCPConnectWrap.afterConnect as oncomplete

Potentially unhandled rejection [2] Error: connect ECONNREFUSED

at exports._errnoException (util.js:746:11)

at TCPConnectWrap.afterConnect as oncomplete

),不知道问题出在了哪?于是回到webstorm中,把这条命令分解(process是接受参数的)到文件中直接赋值,输出了两个get(

2015-11-08T06:53:37.493Z - info: get: www.taiki.kankyo.metro.tokyo.jp/cgi-bin/bunpu1/p160.cgi?no2===1==2====2=

2015-11-08T06:53:37.499Z - info: get: www.taiki.kankyo.metro.tokyo.jp/cgi-bin/bunpu1/p160.cgi?no2===2==2====2=

),然后命令就死了,于是设置断点调试和log.info()输出,最后确定了拒绝连接是发生在向网站请求数据的时候,而不是往postgres中写入数据的时候,因为我们已经可以在数据库中建立表,写入数据应该不成问题(其中,也设置了postgres数据库权限,但不起作用)。

再去搜索nodejs中http.get方法的问题,无意之间看到get方法中的url需要加http头的(http://www.cnblogs.com/vimsk/archive/2012/09/22/2697806.html),而自己没有加(期间,自己曾把www.taiki.kankyo.metro.tokyo.jp/cgi-bin/bunpu1/p160.cgi?no2===1==2====2=放到浏览器地址栏中访问,出现了内容,但浏览器是默认省略http头的,自己忽略了这个问题)。于是把http加上(node server.js 8080 postgres://postgres:post@localhost:5432/air http://www.taiki.kankyo.metro.tokyo.jp/cgi-bin/bunpu1),正常运行。

4、思考:遇到问题总是能够解决的,具体思路主要有三个:

  • 冷静的看你输入的参数和他人执行成功时输入的参数的区别,这个有时候很坑的。
  • 看提示的错误是什么。
  • 经验、想象力和猜想告诉我们出现在哪,
  • 设置断点调试和alert、console.log输出位置,这样一步一步往下走看具体错到哪了?

github air项目中遇到的几个问题及解决(nodejs居多)的更多相关文章

  1. 如何在 GitHub 的项目中创建一个分支呢?

    如何在 GitHub 的项目中创建一个分支呢? 其实很简单啦,直接点击 Branch,然后在弹出的文本框中添加自己的 Branch Name 然后点击蓝色的Create branch就可以了,这样一来 ...

  2. 关于CUDA C 项目中“ error C2059: 语法错误:“<” ”问题的解决方法

    该问题的关键在于理解CUDA项目中C\C++文件需要由c++编译器进行编译,而CUDA C的源文件需要由CUDA的编译器nvcc.exe进行编译. 发生该语法错误的原因是cu文件被C++编译器所编译, ...

  3. github克隆项目中的子模块submodule时遇到的问题

    GitHub真是个开源大宝库,不只能学习代码,还能学习git的使用! 最近在研究Off-the-Record-iOS项目(https://github.com/chrisballinger/Off-t ...

  4. ASP.NET CORE MVC 2.0 项目中引用第三方DLL报错的解决办法 - InvalidOperationException: Cannot find compilation library location for package

    目前在学习ASP.NET CORE MVC中,今天看到微软在ASP.NET CORE MVC 2.0中又恢复了允许开发人员引用第三方DLL程序集的功能,感到甚是高兴!于是我急忙写了个Demo想试试,我 ...

  5. 删除GitHub上项目中的某个文件

    原文地址 https://www.jianshu.com/p/242412b43ca5 1.首先在本地中更新有该项目的最新包 即确保本地项目和git上的项目内容保持同步(git pull拉取项目代码) ...

  6. (iOS)项目总结-项目中遇到的各种的问题和解决方法

    前言: 一到公司报道那时,便着手独立的去完成了一个项目,其中的辛酸泪也是不足为外人道也.这次算是一个新型的app,仍然是独立开发,但心境和想法却是完全的不同.下面说一次以前做开发时常常忽略的知识,也算 ...

  7. 项目中gulp使用发生的错误及解决

    在项目开发中,执行gulp css来生成合成的css文件时,报如下错误 Error: Cannot find module 'browserslist' 解决方法: npm install brows ...

  8. 关于IDEA中web项目中web.xml配置文件标红的解决办法

    原文链接 https://blog.csdn.net/qq_33451695/article/details/86684127 解决方法前提:web.xml没有实际错误,但依然被web.xml标红 出 ...

  9. github for window 中 git shell 设置代理方法和解决ssl证书错误的问题

    体验了一下传说中的 github for windows(操作git有很多的方法,我还没有学会,所以找了个简单的方法),听说用起来还不错,毕竟也开始接触了github.下载地址是 http://win ...

随机推荐

  1. 推荐网站 explainshell.com

    ls 显示指定目录下的文件和目录,默认为当前目录. -a 显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出) -l 除文件名称外,亦将文件型态.权 ...

  2. RxJS库

    介绍 RxJS是一个异步编程的库,同时它通过observable序列来实现基于事件的编程.它提供了一个核心的类型:Observable,几个辅助类型(Observer,Schedulers,Subje ...

  3. VM虚拟机安装后的网络设置

    -------------------------------------------- VM的win7系统 网络设置: 1,启动前,VM中的 网络适配器:NAT 2,关闭主机和虚拟机的所有防火墙先. ...

  4. 九: 操作提示(js版本)

    一.toast 消息提示框 他用到了一个wx.showToast(object) 这样一个方法.作用是显示提示框. /* ---page/test/test.wxml----*/   <butt ...

  5. 使用 pjax 实现无刷新切换页面

    一.目的 1.当打开链接的时候,页面是淡入显示,并且页面顶部会显示加载进度条,页面显示完成时,进度条加载满并且消失. 2.点击页面上的 a 标签时,显示加载进度条,并且当前页面淡出消失,当前页面淡出消 ...

  6. http协议的各类状态码

    http协议的状态码 1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态码. 100(继续) 请求者应当继续提出请求.服务器返回此代码表示已收到请求的第一部分,正在等待其余部分. 101( ...

  7. Linq学习以及简单用法

    Linq学习 Linq(language Intergrated Query)即语言集成查询 LINQ是一组语言特性和API,使得你可以使用统一的方式编写各种查询.用于保存和检索来自不同数据源的数据, ...

  8. SQL 之获取DATE类的年月日语句

    Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM Select CONVERT(varchar(100), GETDATE( ...

  9. JS实现最短路径之迪杰斯特拉(Dijkstra)算法

    最短路径: 对于网图来说,最短路径是指两个顶点之间经过的边上权值和最少的路径,我们称第一个顶点是源点,最后一个顶点是终点 迪杰斯特拉 ( Dijkstra) 算法是并不是一下子就求出 了 Vo 到V8 ...

  10. C#获取Url不同路径的方法大全

    在 C# 中,用 Request 对象来获取 Url  的各种路径,包括上一页 Url.域名.绝对路径.相对路径和物理路径.虽然在某些情况下,无法获取到 Url,但可以获取到大部分情况下的 Url,下 ...