0

私はyts.ag/apirequestから映画のリストを取得し、それらをサムネイルのグリッドに表示するために使用しています。各サムネイルをクリックすると、映画の詳細を表示する別のページに移動します。データが取得されたときに最初にサムネイルをクリックし、次に同じ映画または他の映画をクリックしたときに空である場合、サーバーを再起動する必要があります。何が問題のように思われますか、それとも実装が間違っていますか?bodyrequestbodyrequest

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;
4

1 に答える 1

1

movie_idを含むクエリ文字列をリクエスト URL に何度も追加しています。したがって、最初のリクエストのみが機能し、後続のすべてのリクエストには無効なリクエスト URL が含まれます。代わりに、リクエスト コールバックで新しいリクエスト URL を作成します。さらに、発生する可能性のあるエラーを無視します。

于 2016-11-22T06:50:26.257 に答える