节点js express res.json()返回html而不是json [英] Node js express res.json() return html not json
本文介绍了节点js express res.json()返回html而不是json的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在调用router.get()时遇到问题,我使用res.json()返回响应json,但返回html 这是我的api.js
I have problem when a call router.get(), i am returning to response json using res.json() but it return html here is my api.js
var express = require('express');
var router = express.Router();
var marklogic = require("marklogic");
var conn = require('../env.js').connection;
var db = marklogic.createDatabaseClient(conn);
router.route('/akt')
// Vraca usvojene akte
.get(function (req, res) {
res.json({message: 'TODO vraca usvojene akte'});
})
// Predlaganje akta
.post(function (req, res) {
db.documents.write(
{
uri: '/korisnik/1.xml',
contentType: 'application/xml',
collections: 'korisnik',
content: '<entry-list><entry id="horror2"></entry></entry-list>'
})
})
// Povlaci predlog akta
.delete(function (req, res) {
res.send({message: "TODO povlaci predlog akta"});
});
router.route('/amandman/:akd_id')
// Predlog amandmana na predlog akta
.post(function (req, res) {
res.send({message: 'TODO predlaganje amandmana na predlog akta'});
})
// Povlaci predlog amandmana
.delete(function (req, res) {
res.send({message: 'TODO povlaci predlog amandmana'});
});
module.exports = router;
请有人告诉我我的错误在哪里,如果您需要更多文件,我会给它.
Please can somebody tell me where is my error, also if you need some more file I will give it.
我注意到,当我从server.js中删除此行时,一切正常,为什么呢?
I noticed when I remove from server.js this lines everything works, why is that?
app.get('*', function(req, res) {
res.sendFile(__dirname + '/public/index.html');
});
推荐答案
更改此内容
app.get('*', function(req, res) {
res.sendFile(__dirname + '/public/index.html');
})
到
app.get('/', function(req, res) {
res.sendFile(__dirname + '/public/index.html');
})
使用*
正则表达式时,您会将每个路由都匹配到index.html
.
You match every route to index.html
when using *
regular expression.
这篇关于节点js express res.json()返回html而不是json的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文