我是靠谱客的博主 魁梧钢笔,最近开发中收集的这篇文章主要介绍node.js使用CORS跨域,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

CORS

CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resource sharing)。
它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制。

(1)Access-Control-Allow-Origin
该字段是必须的。它的值要么是请求时Origin字段的值,要么是一个*,表示接受任意域名的请求。
(2)Access-Control-Request-Method
该字段是必须的,用来列出浏览器的CORS请求会用到哪些HTTP方法,上例是PUT。
(3)Access-Control-Expose-Headers
该字段可选。CORS请求时,XMLHttpRequest对象的getResponseHeader()方法只能拿到6个基本字段:Cache-Control、Content-Language、Content-Type、Expires、Last-Modified、Pragma。如果想拿到其他字段,就必须在Access-Control-Expose-Headers里面指定。上面的例子指定,getResponseHeader(‘FooBar’)可以返回FooBar字段的值。

具体router

router.get('/activity/all', function(req, res, next) {
  //设置允许跨域请求
  var reqOrigin = req.header("origin");
 
  if(reqOrigin !=undefined && reqOrigin.indexOf("http://localhost:3000") > -1){
  //设置允许 http://localhost:3000 这个域响应
    res.header("Access-Control-Allow-Origin", "http://localhost:3000");
    res.header("Access-Control-Allow-Methods","PUT,POST,GET,DELETE,OPTIONS");
    res.header("Access-Control-Allow-Headers", "Content-Type,Content-Length, Authorization, Accept,X-Requested-With");
  }
  res.json({
            status:'200',
            message:'Kola'
        });

最后

以上就是魁梧钢笔为你收集整理的node.js使用CORS跨域的全部内容,希望文章能够帮你解决node.js使用CORS跨域所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部