美文网首页
nodejs 请求一个外部链接

nodejs 请求一个外部链接

作者: garyhu1 | 来源:发表于2019-10-24 11:52 被阅读0次

    今天分享通过nodejs去请求一个外部链接。
    主要很对get请求和post请求:
    因为网站是http协议的,所以选择的是:

    const http = require('http')
    http.request(options[, callback])
    

    GET

    // GET 请求
    get(options) {
            return new Promise((resolve,reject) => {
    
                let body = '';
      
                // 发出请求
                let req = http.request(options,(res) => {
                    res.on('data',(data) => {// 监听数据
                        body += data;
                    }).on("end", () => {
                        console.log("HTTP DATA >>",body)
                        resolve(JSON.parse(body));
                    })
                });
    
                req.on("error",(e) => {
                    console.log("HTTP ERROR >>",e)
                    reject(e)
                });
                
                //记住,用request一定要end,如果不结束,程序会一直运行。
                req.end();
            });
        },
    

    上面方法中的options如下

    let options = {
                host: 'localhost',
                port: '7002',
                path: '/show',
                method: 'GET',
                headers:{
                    "Content-Type": 'application/json',
                }    
    }
    

    =======================================

    POST

    // POST请求
        post(options,data) {
            // let options = {
            //     host: 'localhost',
            //     port: '7002',
            //     path: '/update',
            //     method: 'POST',
            //     headers:{
            //         "Content-Type": 'application/json',
            //         "Content-Length": data.length
            //     }    
            // }
    
            return new Promise((resolve,reject) => {
                let body = '';
                let req = http.request(options,(res) => {
                    res.on('data',(chuck) => {
                        body += chuck;
                    }).on('end', () => {
                        resolve(JSON.parse(body))
                    })
                });
    
                req.on('error',(e) => {
                    reject(e)
                });
    
                req.write(data);
                req.end();
            });
            
        }
    

    总结:

    可以把上面方法封装在一个文件中,方便调用

    相关文章

      网友评论

          本文标题:nodejs 请求一个外部链接

          本文链接:https://www.haomeiwen.com/subject/urprvctx.html