请求 JSON returns 空主体 Nodejs

request with JSON returns empty body Nodejs

我正在使用 requestyts.ag/api 获取电影列表,并在缩略图网格中显示它们,当我单击每个缩略图时,我会转到另一个页面显示电影的更多详细信息,当我第一次单击缩略图检索数据时,下次单击同一部电影或其他电影时 body 为空,我将不得不重新启动服务器它有效,并且仅适用于 request returns 空 body 之后的一个请求。似乎是什么问题或者我实施 request 错误?

var express = require('express');
var router = express.Router();
var request = require('request');
var url = 'https://yts.ag/api/v2/movie_details.json';

router.get('/:id', function (req, res, next) {
    url += '?movie_id=' + req.params.id;
    request(url, function (error, response, body) {
        if (!error && response.statusCode == 200) {
            if (body) {
                var importJSON = JSON.parse(body);
                res.render('movie', {title: 'Hypertube - Torrent streaming', moviedetails: importJSON.data.movie});
            }else {
                res.render('movie', {title: 'Hypertube - Torrent streaming', moviedetails: false});
            }
        }
    });
});

module.exports = router;

您将包含 movie_id 的查询字符串一遍又一遍地添加到请求 URL 中。因此只有第一个请求有效,而所有后续请求都有无效请求 URL。而是在您的请求回调中创建一个新请求 URL。此外,您只需忽略可能遇到的任何错误。