GEO location TypeError: Cannot read property 'country' of null

GEO location TypeError: Cannot read property 'country' of null

在新连接上,我有时会收到错误 TypeError: Cannot read property 'country' of null,但大多数情况下它都能正常工作!

我如何在它为 null 时避免这种情况,这样我就不会得到错误?

错误行是var location = geo.country;

        var ip =  socket.ip //socket.ip;
        var geo = geoip.lookup(ip);     
        var location = geo.country;
        console.log(location);

使用条件:

var location = geo ? geo.country : "unknown";

这里详细解释了条件运算符:

Question Mark in JavaScript

这意味着您将获得 null.country,根据您的代码,这意味着 geo 将返回 null。这也意味着您的 geoip 不工作。执行 console.log() 检查您的 geoip 是否返回值或 null。