使用节点查询GraphQL API

时间:2017-02-24 19:19:31

标签: node.js graphql

目前我的代码看起来像这样。问题是,它为我提供HTML而不是JSON。我在查询错误的位置吗?我是否应该使用更适合处理此类数据的包?我只是不明白。有人能指出我正确的方向吗?感谢

    var request = require('request');
    var options = {
      url: 'https://api.psychonautwiki.org/?query={  substances {    name    effects {      name    }  }}',
      headers: {
        'Content-Type': 'application/json'
      }
    };

    function callback(error, response, body) {
      if (!error && response.statusCode == 200) {
        console.log(body);
      }
    }
    request(options,callback);
  }

2 个答案:

答案 0 :(得分:0)

尝试添加Accept标头,告诉服务器您期待的内容。

'Accept': 'application/json'

答案 1 :(得分:0)

GraphQL apis通常会将query和其他选项作为请求体提供,并且主要使用POST http方法。看起来这个api用GraphiQL用户界面对你的GET请求作出反应,这就是为什么你得到html作为回应。