微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

node.js – 节点js请求获取页面错误500

我想使用节点js中的请求模块向页面发出请求,但这有错误500.
这是json响应的一部分

{
  "readable": false,"domain": null,"_maxListeners": 10,"httpVersion": "1.1","complete": true,"_pendingIndex": 0,"url": "","method": null,"statusCode": 500,"_consuming": true,"_dumped": false,"httpVersionMajor": 1,"httpVersionMinor": 1,"upgrade": false,"body": "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n<html><head>\n<title>500 Not Found</title>\n</head><body>\n<h1>Not Found</h1>\n<p>The requested\n                site <a href=\"http:// HTTP/1.1/\"> HTTP/1.1</a> is not presently available on\n                this <a href=\"http://www.hybrid-cluster.com/\">web cluster</a>.\n                This may be a temporary issue,so please try again in a few\n                moments.</p>\n\n</body></html>\n","_readableState": {
    "highWaterMark": 16384,"length": 0,"pipes": null,"pipesCount": 0,"flowing": false,"ended": true,"endEmitted": true,"reading": false,"calledRead": true,"sync": false,"needReadable": true,"emittedReadable": false,"readableListening": false,"objectMode": false,"defaultEncoding": "utf8","ranOut": false,"awaitDrain": 0,"readingMore": false,"decoder": null,"encoding": null,"buffer": []
  },

这是我用于请求的代码

app.get('/',function(req,res){
    var options = {
        url: 'http://www.Metallicabyrequest.com/'
    }
    request(options,function (error,response,html) {
        /*if (!error && response.statusCode == 200) {
            res.json(html);
        }*/
        if(error){
            res.json(error);
        }else{
            res.json(response)
        }
    });
});

有没有办法防止错误500?我读过如果你更改标题,可能是请求有效,但我不知道该怎么办…

解决方法

该网站在请求标头中需要“主机”:

var options = {
    url: 'http://www.Metallicabyrequest.com/',headers: {
       'Host': 'www.Metallicabyrequest.com'
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐