zoukankan      html  css  js  c++  java
  • Nodejs允许跨域访问

    状况:本地的前端项目(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);//请求完成   }  })
  • 相关阅读:
    switch case加范围判断
    对requestAnimationFrame的一点理解
    用dos命令导出一个文件夹里面所有文件的名字(装逼利器)
    zookeeper基本知识入门(一)
    hadoop学习(七)----mapReduce原理以及操作过程
    centos虚拟机配置静态ip
    linux 配置ssh无密码登录不起作用的解决方案
    linux下安装开发环境
    hadoop学习(五)----HDFS的java操作
    hadoop学习(四)----windows环境下安装hadoop
  • 原文地址:https://www.cnblogs.com/moutudou/p/11978539.html
Copyright © 2011-2022 走看看