前端获取数据; nodejs + express + mysql

不了解后台技术;
做了个页面,数据库mysql; node + express;前端angular2;
但是在获取数据的时候遇到了问题

之前用json-server做的json格式的假数据,
可以在浏览器中localhost:3000或者localhost:3000/main/...这种路径直接显示出数据

但是现在用了数据库之后,由于不懂后台,直接把json数据整个INSERT到一个数据表内

现在在浏览器中可以在localhost:3000内直接看到整个数据 (转成obj类型输出),
但是在localhost:3000/main/这种路径却取不到数据

现在的结果是

本来依照假数据做的页面读取不到数据
请问如何改,在哪个环节改?


首先感谢几位的指导~

还是没搞明白
比如数据是这样的:
{

"header": {
    "logo": "assets/img/head_logo.jpg",
    "titleList": [
        {
            "svg": "assets/img/d_home.svg",
            "title": "首页"
        },
        {
            "svg": "assets/img/d_work.svg",
            "title": "工作"
        }
    ],
    "musicLogo": {
        "src": "assets/img/me_logo.jpg",
        "className": "musicLogo"
    },
},
"main": {
    
}

}

之前用假数据, 只要 url: localhost:3000/ 或者 url: localhost:3000/header 都可以获取到数据,
之后只要在js里 res.header.titleList 这样就可以使用数据;

当我要使用后台服务时,直接把这个数据insert 到 mysql 做成数据表之后,
也可以在后台 node app.js 的时候,在mysql里直接console.log(res.header.*)得到数据,
但是这个时候在浏览器内浏览 localhost:3000/header 却无法获取数据

我有看过express的文档 和 网上的一些文章,
都是使用假数据 或者 在app.send() 时, 直接输出一个字符串 比如:
app.get("/header", function(req, res) {

res.json({
    name:"张三",age:40
})

}

或者是输出一个文件 比如:
app.get('/about', function(req, res) {
res.sendfile('./views/about.html');
});

但是我想的是不使用这种外部文件,而是直接从后台得到数据 比如:
app.get("/header", function(req, res) {

res.send(
    res.header   // 是这个意思
)

}

但是都没有找到方法, 是要在express中间件或者nodejs环节做什么处理?还是我遗漏了什么环节?

阅读 5k
4 个回答

查阅express路由文档,映射相应的接口到/main

express路由就行,这里有我以前写vue项目使用模拟数据的demo,你可以参考以下,是用假数据实现的多接口应用.

搭建一个nodejs和mysql相联系的数据库 然后在SQLserver里面添加数据?
如果是这样的话,你可以搞一搞nodejs

应该是路由的问题,看一下express的路由

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题