状况:本地的前端项目(uni-app)以及后台管理(vue-mongo-node)和本地mongo数据库

前台项目端口是8082,后台数据接口是8081.

跨域解决,直接上代码:

uni-app的mainfest.json下: 红色部分代理(node设置允许跨域之后,不加这部分的代理也可以跨域请求)  可加可不加

"app-plus": { /* 5+App特有相关 */
  "splashscreen": {
    "alwaysShowBeforeRender": true,
    "waiting": true,
    "autoclose": true,
    "delay": 0
    },
  "modules": { /* 模块配置 */
    },
  "h5": {
  "devServer": {
    "port": 8081,
    "disableHostCheck": true,
    "proxy": {
      "/api": {
        "target": "http://localhost:8081",
        "changeOrigin": true, //开启代理
        "ws": false,
        "pathRewrite": {
        "^/api": ""

        }
      }
    }
  }

 },

node接口部分:server.js(一定一定要放在最上面,实例化之后); 允许跨域一定要放在实例化之后!!!!

const express = require("express");
const app = express(); //设置跨域访问
app.all("*",function(req,res,next){
//设置允许跨域的域名,*代表允许任意域名跨域
res.header("Access-Control-Allow-Origin","*");
//允许的header类型
res.header("Access-Control-Allow-Headers","content-type");
//跨域允许的请求方式
res.header("Access-Control-Allow-Methods","DELETE,PUT,POST,GET,OPTIONS");
if (req.method.toLowerCase() == 'options')
res.send(200); //让options尝试请求快速结束
else
next();
})

请求例子:

uni.request({
  url:"http://localhost:8081/api/test",
  method:"GET",
  success(data) {
    console.log(data);//请求成功
  },
  fail(err){
    console.log(err)
  },
  complete(res) {
    console.log(res);//请求完成
  }
 })

Nodejs允许跨域访问的更多相关文章

  1. nodejs前端跨域访问

    XMLHttpRequest cannot load http://localhost:3000/. No 'Access-Control-Allow-Origin' header is presen ...

  2. nodejs设置跨域访问

    //设置跨域访问app.all('*', function(req, res, next) { res.header("Access-Control-Allow-Origin", ...

  3. nodejs 设置跨域访问

    app.use(logger('dev')); app.use(express.json()); app.use(express.urlencoded({ extended: false })); a ...

  4. Ajax.Nodejs.跨域访问

    使用环境: 客户端: jQuery 服务器: Node.js 在通过Ajax调用非本域的链接/接口时, 一般是不能成功的, 就算是同一个IP下不同的端口也被认作跨域访问 解决办法记录如下: 客户端: ...

  5. 解决cookie跨域访问

    一.前言 随着项目模块越来越多,很多模块现在都是独立部署.模块之间的交流有时可能会通过cookie来完成.比如说门户和应用,分别部署在不同的机器或者web容器中,假如用户登陆之后会在浏览器客户端写入c ...

  6. System.Web.Http.Cors配置跨域访问的两种方式

    System.Web.Http.Cors配置跨域访问的两种方式 使用System.Web.Http.Cors配置跨域访问,众多大神已经发布了很多文章,我就不在详细描述了,作为小白我只说一下自己的使用心 ...

  7. REST API之前端跨域访问

    关键字:跨域访问,cross-origin, NodeJS, REST API, JavaScript, Access-Control-Allow-Origin 1.新建并运行一个 NodeJS的se ...

  8. nodejs 实现跨域

    1.nodejs let http = require('http'); http.createServer((req,res) => { res.setHeader("Access- ...

  9. 解决cookie跨域访问.2

    v一.前言 随着项目模块越来越多,很多模块现在都是独立部署.模块之间的交流有时可能会通过cookie来完成.比如说门户和应用,分别部署在不同的机器或者web容器中,假如用户登陆之后会在浏览器客户端写入 ...

随机推荐

  1. Linux-saltstack-1 saltstack的安装与基本配置

    @ 目录 一.环境介绍 二.安装saltstack 1.配置安装yum源 2.安装salt-master 3.安装slat-minion 三.配置salt-master 1.指定master的地址 2 ...

  2. Python 安装第三方模块时 报Retrying(Retry(total=4, connect=None, read=None, redirect=None, status=None))...[WinError 10061]由于目标计算机积极拒绝,无法连接 错误

    今日在安装ddt模块时(Windows系统),cmd报了一个以前从未见过的错误,如下图所示: 经百度,知是镜像源的问题,将安装命令改成如下命令: pip install ddt -i https:// ...

  3. 初识python: 生成器

    生成器定义理解,直接上代码: #!/user/bin env python # author:Simple-Sir # time:20181005 # 生成器 ''' # 列表生成式 a=[i for ...

  4. Maven+ajax+SSM实现查询

    2.尚硅谷_SSM高级整合_使用ajax操作实现页面的查询功能 16.尚硅谷_SSM高级整合_查询_返回分页的json数据.avi 在上一章节的操作中我们是将PageInfo对象存储在request域 ...

  5. 彻底剖析JVM类加载机制

    本文仍然基于JDK8版本,从JDK9模块化器,类加载器有一些变动. 0 javac编译 java代码 public class Math { public static final int initD ...

  6. STM32寄存器深入分析

    可能很多刚开始学习STM32的小伙伴都有一个疑惑,创建项目时会需要很多头文件,导致学习过程中很难明白那些头文件的作用,虽然知道头文件都是对寄存器的封装,但是怎么封装的就不知道了.这里我以led灯为试验 ...

  7. Java包装类和处理对象

    Java中基本类型变量和字符串之间的转换 public class Primitive2String { public static void main(String args[]) { String ...

  8. Java打印空心三角

    Java打印空心三角 public static void main(String[] args) { int n=5; //n表示输出空心三角形行数,这里以5行为例 for(int i=1;i< ...

  9. 【记录一个问题】cv::cuda::dft()比cv::dft()慢很多

    具体的profile调用图如下: 可以看见compute很快,但是构造函数很慢. nvidia官网看到几篇类似的帖子,但是没有讲明白怎么解决的: opencv上的参考文档:https://docs.o ...

  10. pytest文档7-计算单元测试代码覆盖率(pytest-cov)

    pytest-cov 先命令行安装 pytest-cov 2.10.1版本 pip install pytest-cov==2.10.1 环境要求:1.python3.6.6 版本备注:其它版本没试过 ...