Comment exprimer et demander des images distantes proxy ?
習慣沉默
習慣沉默 2017-05-16 13:45:34
0
3
603

Utilisez Node's Express combiné avec une demande de proxy d'images distantes, mais le contenu renvoyé est différent du contenu de l'image d'origine. Il est tronqué, mais le désordre est incohérent.
Code clé :

var FurionImgHandler = function (req, res) {
    var url = req.url.split('/fimg/')[1];
    var options = {
        url: url
    };

    function callback (error, response, body) {
        if (!error && response.statusCode === 200) {
            var contentType = response.headers['content-type'];
            response.setEncoding('binary');
            res.set('Content-Type', contentType);
            res.send(body);
        }
    }

    request.get(options, callback);
};

Photo originale :

Photos renvoyées après proxy :

習慣沉默
習慣沉默

répondre à tous(3)
習慣沉默

Ajoutez simplement encoding: null et c'est tout

var options = {
    url: url,
    encoding: null
};
阿神

Il devrait s'agir de l'objet Blob transmis.

大家讲道理

Si l'image ne nécessite pas de stockage ou d'autres opérations, ne peut-elle pas être transmise directement à la réponse via le tube ?

http.get(options, (response) => {
    response.pipe(res);
})

bientôt

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!