视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
本地环境操作node服务器跨域用法总结
2020-11-27 19:38:20 责编:小采
文档
 这次给大家带来本地环境操作node服务器跨域用法总结,本地环境操作node服务器跨域用的注意事项有哪些,下面就是实战案例,一起来看一下。

背景

我们都知道浏览器有一个既核心也最基本的安全功能,即同源策略。同源分别是:协议,域名,端口。如果浏览器访问服务器不同源的话,就会访问不到数据。那开发中常常访问的服务器不同源,那么可以借助一个服务器当做中介来访问需要访问的服务器从而获得数据。因为同源策略是浏览器的安全机制,而服务器之间是不受此的。之前vue-cli模板build文件夹下有dev-serve.js文件,可以在此文件中配置本地node服务器实现跨域,现在的模板下没有此文件,那我们该如何使用node跨域呢?不逼逼,上方法。

具体操作

1、在build文件夹下面新建一个dev-serve.js文件,其中添加代码如下:

'use strict'
const express = require('express')
const axios = require('axios')
module.exports = function () {
 let app = express()
 app.get('/api/getDiscList', (req, res) => {
 let url = '请求地址'
 axios.get(url, {
 headers: {
 //这里请求的是QQ音乐的接口,带上下面参数是为了骗服务器是自己人
 referer: 'https://c.y.qq.com/',
 host: 'c.y.qq.com'
 },
 params: req.query
 }).then((response) => {
 res.json(response.data)
 }).catch((e) => {
 console.log(e)
 })
 })
 app.listen(3000)
}

2、在build.js中引入并且运行只需要在最上面添加 require('./dev-serve.js')()

当我们npm run dev运行项目的时候,node服务器就会启动自动监听3000端口

3.本地发送ajax请求,就可以通过node服务器访问到数据,请求我使用的是axios。请求如下:

import axios from 'axios'
function getDiscList() { 
 const data = {
 //...请求参数
 }
 return axios.get('/api/getDiscList', {
 params: data
 }).then(res => {
 return Promise.resolve(res.data)
 })
}

请求到数据如下:

相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!

推荐阅读:

怎样发布vue+todo-list应用

vue cli+webapck4需要哪些步奏

下载本文
显示全文
专题