模擬寫的node服務器請求
const express = require('express')
const app = express()
app.get('/api/getname', (req, res) => {
res.send({
name: '黎明',
age: 18
})
})
app.listen(3000, () => {
console.log('connect host3000')
})
使用客戶端訪問請求
import axios from 'axios' let host = 'http://127.0.0.1:3000' let url = host + '/api/getname' axios.get(url).then(res => {console.log(res)})
啟動項目報錯
Access to XMLHttpRequest at 'http://127.0.0.1:3000/api/getname' from origin 'http://localhost:8070' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
跨域問題,在node項目安裝cors
cnpm i cors -S
修改express配置
const express = require('express')
const app = express()
const cors = require('cors')
app.use( cors( ) )
app.get('/api/getname', (req, res) => {
res.send({
name: '黎明',
age: 18
})
})
app.listen(3000, () => {
console.log('connect host3000')
})
重新啟動項目,可以訪問接口數據
如果配置cors后還是報跨域錯誤,或者提示has been blocked by CORS policy: Cross origin requests are only supported for protocol schemes
檢查一下請求路徑是否與服務器路徑一致,清空瀏覽器緩存在試,一般沒有問題
