Express - Uncaught TypeError:无法读取属性' prototype' of undefined,request.js 31

时间:2016-07-04 20:17:25

标签: javascript node.js express reactjs

我花了太多时间尝试调试这个,但不确定它的来源或为什么我会收到此错误。 我正在尝试建立一个简单的网站来练习反应,并试图从Riot的API中获取一些数据。

我尝试使用isomorphic-fetch但遇到了https的问题,所以我切换到快递。

切换到快递后我得到"未捕获的TypeError:无法读取属性' prototype'未定义的。

如果重要的话,我也在使用browserify-middleware。

这是导致问题的文件。

// import fetch from 'isomorphic-fetch';

// var myHeaders = new Headers();

var express = require('express')
var app = express();

var apiURL = 'https://na.api.pvp.net/api/lol/na/v1.4/';
var apiToken = '?api_key='


// export function fetchSummonerInfo() {
//  return fetch(apiURL + 'summoner/by-name/' + AUserName + apiToken, {
//      method: 'GET',
//      mode: 'no-cors'
//  })
//      .then((data) => console.log(JSON.stringify(data)))
//      // .catch((e) => console.log(e))
//      // .then((res) => console.log(res))
// }
// 

// app.use(function(req, res, next) {
//  res.header("Access-Control-Allow-Origin", "*");
//  res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
//  next();
// })

export function fetchSummonerInfo() {
    app.get(apiURL + 'summoner/by-name/Faxious' + apiToken, middle,  function(req, res) {
        let body = ""
        res.on('data', function(data) {
            body += data;
        })
        res.on('end', function() {
            console.log(body);
        })
    })
}

function middle(req, res, next) {
    res.header("Access-Control-Allow-Origin", "*");
    res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
    next();
}

1 个答案:

答案 0 :(得分:0)

Express是后端处理请求并提供不执行请求的响应的Web框架。请查看路线指南here

如果您想提出请求,我可以推荐request模块,我个人更喜欢我的项目,而且非常简单。还有一些替代方案,例如axios