veike
V2EX  ›  Node.js

帮忙看看这段 node 代码是否有问题

By veike at 2019 年 3 月 2 日 · 4128 次点击
let http = require('http');
let url = require('url');

http.createServer(function (req,res) {
    let params = url.parse(req.url,true).query;

    if( !params.url){
        res.writeHead(200,{'Content-Type':'application/json'});
        return res.end(JSON.stringify({
            error:"no url"
        }));
    }

    res.writeHead(200,{'Content-Type':'application/json'});
    res.end(JSON.stringify({
        url:params.url
    }));

}).listen(8080);

这段代码放在版瓦工服务器上,url 参数 如果是 http://www.youtube.com https://www.google.com 或者 www.facebook.com 这样的网址,网站就没办法访问了。 这个是什么原因呢。

10 条回复  •  2019-03-02 14:01:41 +08:00
veike
   1
veike  
OP
   2019 年 3 月 2 日
let http = require('http');
let url = require('url');

http.createServer(function (req,res) {
let params = url.parse(req.url,true).query;

if( !params.url){
res.writeHead(200,{'Content-Type':'application/json'});
return res.end(JSON.stringify({
error:"no url"
}));
}

res.writeHead(200,{'Content-Type':'application/json'});
res.end(JSON.stringify({
url:params.url
}));

}).listen(8080);
wshcdr
   2
wshcdr  
   2019 年 3 月 2 日   ❤️ 1
主贴的背景色闪瞎了我的狗眼
1KN6sAqR0a57no6s
   3
1KN6sAqR0a57no6s  
   2019 年 3 月 2 日
des
   4
des  
   2019 年 3 月 2 日 via Android
和开会有关吧
des
   5
des  
   2019 年 3 月 2 日 via Android
直接看这个
curl -v -I http://github.com/?u?=www.google.com
bestie
   6
bestie  
   2019 年 3 月 2 日
代码白色背景白色字真是瞎了我的眼。。
veike
   7
veike  
OP
   2019 年 3 月 2 日
@YuxiangLuo 本地没问题,上传到搬瓦工上,url 参数如果是 www.google.com 就提示无法访问此网站
veike
   8
veike  
OP
   2019 年 3 月 2 日
@wshcdr
@bestie 我加了 pre 标签就成这样了,不是我的错。
veike
   9
veike  
OP
   2019 年 3 月 2 日
@des 用这个也是 其他参数 OK 的,然后只要用加的是 www_google_com www_youtube_com www_facebook_com 也是失败 提示 Connection reset by peer。这是什么原因呢?
什么开会。
veike
   10
veike  
OP
   2019 年 3 月 2 日
终于弄明白了,我只能说现在的墙是真的厉害,ss 全局模式开启没有任何问题。网站正常访问。
真是无语了,以为是代码的问题。
© 2026 V2EX · 39ms · 3.9.8.5