提取后接收到的数据输出

问题描述 投票:-1回答:3

我为这个愚蠢的问题表示歉意,请告诉我如何从fetch()传输数据。然后()转到另一个函数。

const http = require('http');
const https = require('https');
var urlZaprosHttp = 'http://ietf.org/';
var urlZaprosHttps = 'https://ietf.org/';


const fetch = url => new Promise((resolve, reject) => {
  const protocol = url.startsWith('https') ? https : http;
  protocol.get(url, res => {
    if (res.statusCode !== 200) {
      const { statusCode, statusMessage } = res;
      reject(new Error(`Status Code: ${statusCode} ${statusMessage}`));
    }
    res.setEncoding('utf8');
    const lines = [];
    res.on('data', chunk => lines.push(chunk));
    res.on('end', () => resolve(lines.join()));
  });
});

// Usage

fetch(urlZaprosHttps)
  .then(body => console.log(body))
  .catch(err => console.error(err));
javascript promise output fetch
3个回答
1
投票

您可以简单地从then()中调用另一个函数,然后对该函数中的数据进行任何操作:

fetch(urlZaprosHttps)
  .then(body => someOtherFunction(body))
  .catch(err => console.error(err));

1
投票
const myFunc = (data) => {
 console.log(data)
} 

   fetch(urlZaprosHttps)
      .then(myFunc(data))
      .catch(err => console.error(err));

然后,您可以传入一个函数,返回的数据将被传递给该函数,就像我的示例一样。


0
投票
   .then( body => { 

    myfunc(body)

    })
© www.soinside.com 2019 - 2024. All rights reserved.