所以我正在请求 twitch 以使用 npm 响应获取一些流媒体数据。
var express = require('express');
var router = express.Router();
var request = require('request');
/* GET users listing. */
router.get('/streams/:user', function(req, res, next) {
request('https://api.twitch.tv/kraken/streams/' + req.params.user, function ( error, response, body) {
if (!error && response.statusCode == 200)
{
res.send(body);
}
else
{
res.send(404);
}
});
});
module.exports = router;
当我执行 res.send(body) 时,它返回我打印到屏幕上的 json 对象。
{"_links":{"self":"https://api.twitch.tv/kraken/streams/allencoded","channel":"https://api.twitch.tv/kraken/channels/allencoded"},"stream":null}
所以我不想取回所有这些,而只是获取自己的 url。 然后我想我会做类似的事情:
res.send(body._links.self)
除了一个空白屏幕什么也没返回。
如何只打印出自己的url?
最佳答案
这个问题有点老了,但是,下面的问题似乎也更有帮助。在请求中,您可以传递 json: true
并且请求库返回给您 json 对象。
替换下一行,
request('https://api.twitch.tv/kraken/streams/' + req.params.user, function ( error, response, body) {
下面的那个
request({'url':`https://api.twitch.tv/kraken/streams/${req.params.user}`, 'json': true }, function ( error, response, body) {
关于json - npm 请求在做 body 时没有得到 json 响应。{object},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29333506/