2

我有这段代码可以在桌面浏览器中产生所需的效果。

var express = require('express'),
    http = require('http'),
    app = express(),

    mongo = require('mongodb'),
    ObjectId = require('mongodb').ObjectID,
    ISODate = require('mongodb').ISODate,
    monk = require('monk'),
    db = monk('localhost:27017/database', {
       username : 'user',
       password : 'pwd'
    }),

    server = http.createServer(app);

app.configure(function(){
    app.use(cors());
    app.use(express.json());
});

app.get('/get-audio/:name', function(req, res){
    var hash = req.params.name,
        dbData = db.get('audio_database');
        dbData.findOne({'hash':hash}, function(e, data){
            if(e){res.send(400, e);}
            else{
                res.send(200, data);
            }
        });
});
server.listen(8080);
console.log('Listening on port 8080.');

在桌面浏览器中,我得到一个 JSON 对象,一切都很好。在移动浏览器中,数据对象始终为空。没有抛出错误。什么都没有扔。我知道这不是一个完整的 REST 服务器,但这不是我需要的。我正在获取数据对象并使用对象中的一些属性来做一些其他事情,而不是实际输出原始数据。到目前为止,我已经解构了这个问题,发现 mongo 甚至没有返回一个对象。如何在不实现完整的 REST 服务器的情况下完成这项工作?

4

0 回答 0