2016-10-02 21 views
0

Google Maps APIとMeetup.comのAPIを使用してイベントをマップにロードするアプリケーションがあります。 Meetup用の私のAPIキーは、私の.zshrcファイルの一番下に保存され、エクスポートされ、localhost上で正常に動作します。しかし、私がHerokuでアプリを使用しようとするとAPIが500を返します。APIキーはlocalhostで動作しますが、Herokuでは動作しません

var request = require('request-promise'); 

function getEvents(req, res) { 

    request.get({ 
    url: "https://api.meetup.com/2/open_events", 
    qs: { 
     key: process.env.MEETUP_API_KEY, 
     lat: req.query.lat, 
     lon: req.query.lng, 
     category: req.query.category, 
     radius: req.query.radius || 1, 
     sign: true 
    }, 
    json: true 
    }) 
    .then(function(response) { 
    res.status(200).json(response.results); 
    }) 
    .catch(function(err) { 
    console.log(err); 
    res.status(500).json(err); 
    }) 
} 

function getCategories(req, res) { 

    request.get({ 
    url: "https://api.meetup.com/2/categories", 
    qs: { 
     key: process.env.MEETUP_API_KEY, 
     sign: true 
    }, 
    json: true 
    }) 
    .then(function(response) { 
    res.status(200).json(response.results); 
    }) 
    .catch(function(err) { 
    console.log(err); 
    res.status(500).json(err); 
    }) 
} 

module.exports = { 
    getEvents: getEvents, 
    getCategories: getCategories 
} 

そしてpackage.jsonの私の依存関係:

"dependencies": { 
    "bcrypt": "^0.8.7", 
    "bluebird": "^3.4.6", 
    "body-parser": "^1.15.2", 
    "cors": "^2.8.1", 
    "express": "^4.14.0", 
    "jsonwebtoken": "^7.1.9", 
    "moment": "^2.15.0", 
    "mongoose": "^4.6.0", 
    "mongoose-beautiful-unique-validation": "^5.0.1", 
    "morgan": "^1.7.0", 
    "request": "^2.74.0", 
    "request-promise": "^4.1.1" 
    } 

おかげ

は、ここに私のmeetup.jsコントローラです。

答えて

0

固定。 HerokuはAPIキーに割り当てられた値を持っていなかったので、作業ディレクトリで値は

heroku config add:MEETUP_API_KEY="[key value here]" 
で割り当てることができます
関連する問題