/api/getPurlUrl接口404

来源:13-4 编译打包-Vue.js升级到最新版

慕工程4085921

2020-04-12

Nginx服务器配置代理时候,get请求能正常返回数据,post接口/api/getPurlUrl报错404
----------------------Nginx配置------------------
location = / {
root /front/music/dist/;
index index.html;
}

location ~ .*.html$ {
root /front/music/dist/;
index index.html;
}

location ~.*(js|css|png|gif|jpg|mp3|ogg)$ {
root /front/music/dist/;
}

location /music/ {
proxy_pass http://127.0.0.1:9000/;
proxy_redirect off;
proxy_set_header HOST $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

--------------------分割线------------------------------------
---------------------prod.server.js的配置-------------------------
var express = require(‘express’)
var compression = require(‘compression’)
var config = require(’./config/index’)
var axios = require(‘axios’)
const bodyParser = require(‘body-parser’)

var port = process.env.PORT || config.build.port

var app = express()

var apiRoutes = express.Router()

apiRoutes.get(’/getDiscList’, function (req, res) {
var url = 'https://c.y.qq.com/splcloud/fcgi-bin/fcg_get_diss_by_tag.fcg
axios.get(url, {
headers: {
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)
})
})

apiRoutes.get(’/getCdInfo’, function (req, res) {
var url = 'https://c.y.qq.com/qzone/fcg-bin/fcg_ucc_getcdinfo_byids_cp.fcg
axios.get(url, {
headers: {
referer: ‘https://c.y.qq.com/’,
host: ‘c.y.qq.com
},
params: req.query
}).then((response) => {
var ret = response.data
if (typeof ret === ‘string’) {
var reg = /^\w+(({.+}))$/
var matches = ret.match(reg)
if (matches) {
ret = JSON.parse(matches[1])
}
}
res.json(ret)
}).catch((e) => {
console.log(e)
})
})

apiRoutes.get(’/lyric’, function (req, res) {
var url = ‘https://c.y.qq.com/lyric/fcgi-bin/fcg_query_lyric_new.fcg

axios.get(url, {
headers: {
referer: ‘https://c.y.qq.com/’,
host: ‘c.y.qq.com
},
params: req.query
}).then((response) => {
var ret = response.data
if (typeof ret === ‘string’) {
var reg = /^\w+(({.+}))$/
var matches = response.data.match(reg)
if (matches) {
ret = JSON.parse(matches[1])
}
}
res.json(ret)
}).catch((e) => {
console.log(e)
})
})

app.post(’/getPurlUrl’, bodyParser.json(), function (req, res) {
console.log(‘req.body======’ + req.body)
const url = 'https://u.y.qq.com/cgi-bin/musicu.fcg
axios.post(url, req.body, {
headers: {
referer: ‘https://y.qq.com/’,
origin: ‘https://y.qq.com’,
‘Content-type’: ‘application/x-www-form-urlencoded’
}
}).then((response) => {
res.json(response.data)
}).catch((e) => {
console.log(e)
})
})

app.use(’/api’, apiRoutes)

app.use(compression())

app.use(express.static(’./dist’))

module.exports = app.listen(port, function (err) {
if (err) {
console.log(err)
return
}
console.log(‘Listening at http://localhost:’ + port + ‘\n’)
})

写回答

1回答

ustbhuangyi

2020-04-12

你这个应该是 apiRoutes.post('/getPurlUrl')

0
0

Vue2.0高级应用教学实战,开发企业级移动端音乐Web App

Vue.js高级知识应用大集合,实战企业级APP,教你搞定组件化开发。

5432 学习 · 3804 问题

查看课程