netease.js 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. var express = require('express');
  2. var request = require('request');
  3. var router = express.Router();
  4. /* GET users listing. */
  5. router.get('/', function(req, res, next) {
  6. res.header("Content-Type", "application/json;charset=utf-8");
  7. //console.log('ref:' + req.header('referer'));
  8. var id = req.query.id;
  9. var playlist_id = req.query.playlist_id;
  10. var url = 'http://music.163.com/api/song/detail/?id=' + id + '&ids=%5B' + id + '%5D';
  11. if (playlist_id) {
  12. url = 'http://music.163.com/api/playlist/detail/?id=' + playlist_id;
  13. }
  14. netease_http(url, nex, function(data) {
  15. return res.send(data);
  16. });
  17. });
  18. function netease_http(url, next, callbackt) {
  19. var options = {
  20. url: url,
  21. headers: {
  22. Cookie: 'appver=1.5.0.75771;',
  23. referer: 'http://music.163.com'
  24. }
  25. };
  26. request(options, function(err, res, body) {
  27. if (!err && res.statusCode == 200) {
  28. body = JSON.parse(body);
  29. callback && callback(body);
  30. } else {
  31. var error = new Error(err);
  32. error.status = 404;
  33. next(error);
  34. }
  35. });
  36. }
  37. module.exports = router;