无法在NodeJS中解决EADDRINUSE

时间:2012-07-23 19:12:38

标签: node.js express

我正在尝试为节点(https://github.com/gomfunkel/node-mailchimp/)集成mailchimp OAuth插件,并且我一直收到EADDRINUSE错误,我不确定是什么问题。我知道这个错误意味着我只是不知道如何阻止它。

我的快递服务器在端口3000上运行.mailchimp类显然想要生成服务器 - 它默认为端口8100.我已经尝试更改这两个端口无济于事。可能是什么问题?

这是我正在使用的路线代码:

exports.test = function(req, res){
  var MailChimpOAuth = require('mailchimp').MailChimpOAuth;
  var MailChimpAPI = require('mailchimp').MailChimpAPI;

var options = {
    clientId: '00000000',
    clientSecret: 'abcdefghijklmnop',
    serverUri: 'http://localhost',
    redirectUri: 'http://localhost',

};

var oauth = new MailChimpOAuth(options);

现在我的初始请求正常,任何后续请求都会导致错误 - 可能遇到已经生成的服务器。这是mailchimp类中的一个错误,应该看看它是否已经生成了?

2 个答案:

答案 0 :(得分:1)

据我所知,您在每次请求时都会创建一个新的MailChimpOAuth,所以当您的第二个请求到来时,您已经有一台服务器正在监听8100。

您需要在初始化时完成一次的所有设置工作,并且在请求处理程序中,请参阅已经实例化的 MailChimpOAuth实例。

作为一般规则,如果您发现自己在代码中运行了多次require(...),那么您的逻辑需要重新思考。

答案 1 :(得分:0)

跑步:

killall -9 node

再试一次。它对我有用