node.js+express如何跨域访问数据

查看:156
本文介绍了node.js+express如何跨域访问数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

http://pv.sohu.com/cityjson?ie=utf-8

我想在以下代码中的cip,cname...里面获取到上面网页中的数据,可以在服务器端直接跨域获取到吗?CORS可以做到吗,可以的话具体怎么做?

router.post('/giveLike', function(req, res) {
    var admin = {
        cip: 
        cname:
        cid:
    }
    Admin.checkLiked(ip, function(err, status) {
        if(err) {
            res.send('Database Connect Error, Please try again later');
        }
        if (!status) {
            Admin.saveLike(ip, function(err, admin) {
                if (err) {
                    res.send('Database Connect Error, Please try again later');
                }
                count = count + 1;
                req.session.likesCount = count;
                res.send(req.session.likesCount);
            });
        }
        else {
            res.send('existed');
        }
    });
}); 

解决方案

如上所说。

你先确认下你获取sohu数据的这段代码是运行在什么地方的

如果是在浏览器里面,那么你需要考虑跨域问题

如果是在服务器端,那么你不需要考虑跨域问题,只需要在server端模拟请求获取数据就可以了

另外说下CORS,如果没有记错的话,CORS是在目标机器上设置的,也就是在sohu的那个服务上设置的,
这个标记要么是设置好了,即使没设置好,我觉得你可能也没法去修改sohu的服务(内部的另说)

这篇关于node.js+express如何跨域访问数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆