全棧工程師 19 (火車票接口)

火車票查詢接口

  1. 安裝遠(yuǎn)程請(qǐng)求模塊模塊
    npm install https
    npm install request

  2. 準(zhǔn)備請(qǐng)求數(shù)據(jù)

     // 請(qǐng)求接口的參數(shù)
     var url = '/otn/leftTicket/query?leftTicketDTO.train_date='+req.body.date+'&leftTicketDTO.from_station='+req.body.start+'&leftTicketDTO.to_station='+req.body.end+'&purpose_codes=ADULT';
    
     // 生成GET請(qǐng)求的參數(shù)
     var options = {
         // 請(qǐng)求的網(wǎng)址
         hostname: 'kyfw.12306.cn',
         // 端口
         port: 443,
         // 參數(shù)
         path: url,
         // 方法
         method: 'GET',
         //是否驗(yàn)證 必須把證書(shū)驗(yàn)證屏蔽掉
         rejectUnauthorized: false
     };
    
  3. 進(jìn)行遠(yuǎn)程請(qǐng)求

    var request =  https.request(options , function(response){ 
         response.setEncoding("utf8");  //設(shè)置字符集
         var str = '';    
         //拼接數(shù)據(jù)流字符串 
         response.on('data',function(chunk){
             str += chunk;     //接收數(shù)據(jù)
         }); 
         // 完成拼裝 返回響應(yīng)數(shù)據(jù) 進(jìn)行格式化成json對(duì)象
         response.on('end',function(chunk){ 
             res.json(JSON.parse(str));  
          }); 
    
         });
        // 錯(cuò)誤信息 打印在終端,返回到前臺(tái)
         request.on('error',function(e){ 
             console.log('錯(cuò)誤信息:' + e.message); 
             res.json({err:e.message}); 
         }); 
         // 關(guān)閉請(qǐng)求資源
         request.end(); 
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容