,在webpack.dev.config.js中
使用严格的 const跑龙套=要求(“。/跑龙套”) const webpack=要求(“webpack”) 常量配置=要求(. ./配置) 常量合并=要求(“webpack-merge”) const path=要求(“路径”) const baseWebpackConfig=要求(“。/webpack.base.conf”) const CopyWebpackPlugin=要求(“copy-webpack-plugin”) const HtmlWebpackPlugin=要求(“html-webpack-plugin”) const FriendlyErrorsPlugin=要求(“friendly-errors-webpack-plugin”) const portfinder=要求(“portfinder”)//- - - - - - - - - - - - - - - - - - -axios结合节点。js代理后端请求开始 const表达=要求(表达) const axios=要求(“axios”) const应用=表示() var apiRoutes=express.Router () app.use (/api, apiRoutes)//- - - - - - - - - - - - - - - - - - -axios结合节点。js代理后端请求结束 const主机=process.env.HOST=process.env const港口。港口,,号(process.env.PORT) const devWebpackConfig=合并(baseWebpackConfig, { 模块:{ 规则:跑龙套。styleLoaders ({sourceMap: config.dev.cssSourceMap usePostCSS:真}) },//cheap-module-eval-source-map发展更快 devtool: config.dev.devtool,//这些devServer选项应该定制/config/index.js devServer: { clientLogLevel:‘警告’, historyApiFallback: { 重写:[ {:/?/:path.posix.join (config.dev.assetsPublicPath index . html)}, ), },//- - - - - - - - - - - - - - - - - axios结合节点。js代理后端请求 之前(app) {//推荐热门歌单 app.get (/api/getDiscList,函数(点播,res) { var url=' https://c.y.qq.com/splcloud/fcgi-bin/fcg_get_diss_by_tag.fcg ' axios。get (url, { 标题:{ 推荐人:“https://c.y.qq.com/? 主持人:“c.y.qq.com” }, 参数:req.query })((响应)=比;{ res.json (response.data) }).catch ((e)=比;{ console.log (e) }) }),//歌词 app.get (/api/getLyric,函数(点播,res) { var url=' https://c.y.qq.com/lyric/fcgi-bin/fcg_query_lyric_new.fcg ' axios。get (url, { 标题:{ 推荐人:“https://c.y.qq.com/? 主持人:“c.y.qq.com” }, 参数:req.query }) 不要犹豫((响应)=比;{//jsonp数据转为json数据 var=response.data结果 如果(typeof结果==='字符串'){ var reg=/^ \ w + \(({[^()) +}) \)/美元 var=result.match匹配(注册) 如果(匹配){ 结果=JSON.parse(匹配[1]) } } res.json(结果)//res.json (response.data) }) .catch(错误)=比;{ console.log(错误) }) }),//搜索列表接口//https://c.y.qq.com/soso/fcgi-bin/search_for_qq_cp app.get (“/api/搜索”功能(要求,res) { var url=' https://c.y.qq.com/soso/fcgi-bin/search_for_qq_cp ' axios。get (url, { 标题:{ 推荐人:“https://c.y.qq.com/? 主持人:“c.y.qq.com” }, 参数:req.query })((响应)=比;{ res.json (response.data) }).catch ((e)=比;{ console.log (e) }) }) },//- - - - - - - - - - - - - - - - - axios结合节点。js代理后端请求 热点:没错, contentBase:假的,//因为我们使用CopyWebpackPlugin。 压缩:没错, 主持人:主机| | config.dev.host, 端口:端口| | config.dev.port, 开放:config.dev.autoOpenBrowser, 覆盖:config.dev.errorOverlay & # 63;{警告:假的,错误:真}:假的, publicPath: config.dev.assetsPublicPath, 代理:config.dev.proxyTable, 安静:真的,//FriendlyErrorsPlugin所必需的 watchOptions: { 调查:config.dev.poll, } }, 插件:[ 新webpack.DefinePlugin ({ 的过程。env”:要求(“. ./config/dev.env”) }), 新webpack.HotModuleReplacementPlugin (), 新webpack.NamedModulesPlugin ()//HMR在控制台显示了正确的文件名称>/* *搜索列表 */导出功能getSearch(查询、页面zhida perpage) { const url='/api/搜索”//在webpack.dev.config启用了代理跨域//const url=' https://c.y.qq.com/soso/fcgi-bin/search_for_qq_cp ' console.log (url) 常量数据=https://www.yisu.com/zixun/Object.assign (commonParams {}, {//g_tk: 5381,//印尼:0,//格式:json,//inCharset: utf - 8,//outCharset: utf - 8,//注意:0,//平台:编辑,//needNewCode: 1、//w:查询,//zhidaqu: 1、//catZhida: zhida ?1:0,//t: 0,//标志:1、//即:utf - 8,//扫描电镜:1、//aggr: 0,//perpage: 20,//n: 20,//p:页面,//n: perpage,//remoteplace: txt.mqq.all,//_:1537612841753//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -//w:查询,//p:页面,//perpage,//n: perpage,//catZhida: zhida ?1:0,//zhidaqu: 1、//t: 0,//标志:1、//例如:“utf - 8”,//扫描电镜:1、//aggr: 0,//remoteplace:“txt.mqq.all”,//印尼:0,//needNewCode: 1、//平台:“编辑”,//g_tk: 5381,//_:1537612841753//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -测试官方数据 g_tk: 5381, 印尼:0, 格式:json, inCharset:“utf - 8”, outCharset:“utf - 8”, 注意:0, 平台:“编辑”, needNewCode: 1、 w:查询, zhidaqu: 1、 catZhida: zhida & # 63;1:0, t: 0, 国旗:1、 即:“utf - 8”, 扫描电镜:1、 aggr: 0, perpage: perpage, 护士:20, p:页面, remoteplace:“txt.mqq.all”, _:1537612841753 }) axios返回。get (url, { 参数:数据 })((res)=比;{//成功后返回 返回Promise.resolve (res.data) }) }vue音乐软件QQ音乐搜索列表最新接口跨域设置方法