Uso el método GET para solicitar api, pero ahora quiero devolver un fragmento como el valor de ese método. ¿Cómo puedo escribir para obtener el valor global de 'trozo'?
res.on('data', (chunk) => { console.log('body:${chunk}`); })Esta es mi función, quiero devolver el fragmento que incluye la información de openid del usuario de WeChat minapp , y puedo usar el openid para juzgar si el usuario se ha registrado o usar el openid para obtener más información.
function getWXOpenId(body) { //bode:minapp post value; //console.log(body); var params = new URLSearchParams(body); //https://api.weixin.qq.com/sns/jscode2session?appid={$appid}&secret={$secret}&js_code={$code}&grant_type=authorization_code var wx_appid = ''; var wx_secret = ''; var wx_tempCode = params.get("code"); var wx_url = 'https://api.weixin.qq.com/sns/jscode2session?appid=' + wx_appid + '&secret=' + wx_secret + '&js_code=' + wx_tempCode + '&grant_type=authorization_code'; var req = https.request(wx_url, function (res) { console.log('statusCode' + res.statusCode); res.setEncoding('utf8'); res.on('data', (chunk) => { //the chunk has the openid value console.log(`body: ${chunk}`); }) res.on('end', () => { console.log('end'); }); }); req.on('error', (e) => { console.error('error' + e.message); return ; }); //end req.end(); }Ahora quiero devolver el valor del tronco para obtener el openid.
Si se refiere a cómo obtener los fragmentos del lado del cliente, sugiero usar axios y configurar la opción onDownloadProgress , que permite el manejo de eventos de progreso para las descargas.
Por favor, tenga en cuenta que solo funciona para navegadores, si pretende trabajar con otros clientes (por ejemplo, API), eso no funcionará.