nodejs中aja跨域和jsonp跨域

AJAX跨域获取数据1.前端代码: Document异步获取数据 var log=function (obj) { console.log(obj); } var get=document.getElementById('get'); get.addEventListener('click',function () {

AJAX跨域获取数据

1.前端代码:

    Document异步获取数据    var log=function (obj) {        console.log(obj);    }    var get=document.getElementById('get');    get.addEventListener('click',function () {        $.getJSON('http://192.168.0.250:9000/bannerUrl?callback=?',function (data) {            log('result data:'+data.name);        });    },false);

2.nodejs代码

var express = require('express');var router = express.Router();var urllib=require('url');//获取banner urlrouter.get('/bannerUrl',function (req,res,next) {  var data = {'name': 'jifeng', 'company': 'taobao'};  var params=urllib.parse(req.url,true);  //console.log('请求1:'+params);  if (params.query && params.query.callback) {    //console.log('请求2:'+params.query);    var str =  params.query.callback + '(' + JSON.stringify(data) + ')';//jsonp    res.send(str);  } else {    res.send(JSON.stringify(data));//普通的json  }});

JSONP跨域获取数据

1.前端代码

    Document异步获取数据    var log=function (obj) {        console.log(obj);    }    var get=document.getElementById('get');    get.addEventListener('click',function () {        var xhr=new XMLHttpRequest();        xhr.onload=function () {            log(this.responseText);        }        xhr.open('post','http://192.168.0.250:9000/bannerUrl',true);        xhr.send();    },false);

2.nodejs代码:

//获取banner urlrouter.post('/bannerUrl',function (req,res,next) {  res.setHeader('Access-Control-Allow-Origin','http://192.168.0.250:3001');  res.send({name:'wzh'});});

关键字:JavaScript, html, css, html5