【发布时间】:2018-10-01 19:18:25
【问题描述】:
很抱歉问了一个看似常见的问题,但我似乎无法做到。
我想单击“a”标签并打开一个新页面以根据 MySQL 数据库中的 id 显示一篇文章。但我得到了 500。
谁能告诉我我的编码有什么问题?谢谢。
这里是'a'标签
<article v-for='item in dataGroup'>
<a :href="'http://localhost:8090/articlePage.html?articlePage?id='+item.ID" :name='pageId' target="__blank">
<h4>{{item.title}}</h4>
<p>{{item.intro}}</p>
</a>
</article>
我使用 Vue-resource 发送 'get' 请求
const vm = new Vue({
el: '#app',
data: {
dataGroup: [],
},
methods: {
renderArticle(url) {
this.$http.get(url, {
}).then((res) => {
this.dataGroup = res.data;
}, (res) => {
alert(res.status)
})
},
},
created() {
this.renderArticle('/articlePage')
}
})
这是我的服务器代码
module.exports = () => {
var router = express.Router();
router.get('/', (req, res) => {
db.query(`SELECT * FROM articles_table WHERE ID='${pageId.id}'`, (err, page) => {
if (err) {
console.error(err);
res.status(500).send('database error').end();
} else {
res.send(page);
}
})
})
【问题讨论】:
-
你从
console.error(err);得到的错误是什么? -
请求没有到达服务器。 500 状态来自 vue-resource 'alert(res.status)' @Jacob Goh
标签: mysql database express vue.js