请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

/api/getPurlUrl接口404

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’)
})

正在回答 回答被采纳积分+3

1回答

ustbhuangyi 2020-04-12 20:48:51

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

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信