【问题标题】:res.json is not a function - nodejsres.json 不是一个函数 - nodejs
【发布时间】:2019-12-23 02:11:07
【问题描述】:

我在使用 res.json 来获取我的函数的返回时遇到了这个错误,这是代码已在其他地方使用,如下所述,运行良好。

async function getPlaylist(req, res, playlistId) {

  try {

    // const calltoken = await getToken()

    // const token = calltoken.data.access_token

    // console.log(token)

    const config = {
      headers: {
        'Authorization': 'Bearer ' + 'BQA0K9bKgBVn8xTp-yTsoaKs5VfS7EyjMIL03OEOy05wq08ZmLkNfqbbnsL_hFT1AV2FGN5tAQdeDV1X224', //token,
        'Content-Type': 'application/json',
        'Accept': 'application/json'
      }
    }

    const url = 'https://api.spotify.com/v1/playlists/1j2L3DjzZ3SdN64r83Sblj?si=cuvOrPONSO6caE9XD6smEg'

    await axios.get(url, config)
      .then(function (response) {

        var playlist = response

        var items = playlist.data.tracks.items

        // console.log(items)

        const playlistfull = []

        items.forEach(index => {

          var playlistdata = {
            name: index.track.name,
            artists: index.track.album.artists[0].name,
            album: index.track.album.name,
            url: index.track.external_urls.spotify
          }

          playlistfull.push(playlistdata)

        })

        return res.json(playlistfull)

      })

  } catch (error) {

    return console.log(error)

  }
}

【问题讨论】:

  • 为什么应该 res.json 是一个函数?什么res?这是getPlaylist 的第二个参数,但您没有向我们展示如何调用该函数,因此我们无法知道实际值是什么。由于它没有 json 方法,但您认为它应该是,所以该值可能不是您认为的那样。
  • 这能回答你的问题吗? TypeError: res.json is not a function

标签: javascript node.js


【解决方案1】:

你必须在 NodeJS 中使用
节点的resparameterfunction

const router = express.Router();
router
    .route('/')
    .get((req, res) => {
        const playlistId = 'asdf';
        getPlaylist(req, res, playlistId);
        return;
    });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-03-19
    • 2018-07-05
    • 2019-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多