Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialAnthony Trischitti
12,259 PointsKeep getting the error response regardless of profile name?
I realized that the error div is being returned for every user name I typed in. I am sometimes getting an error message in the console regarding events.js line 85. Not sure what is going on here?
Here is a snapshot of the workspace https://w.trhou.se/fbaaim05cd
Peter Smith
12,347 Pointstheres no events.s file in your workspace
2 Answers
Seth Kroger
56,413 Pointsprofile.js
var EventEmitter = require("events").EventEmitter;
var http = require("https");
var util = require("util");
// ...code ommited...
// line 23
profileEmitter.emit("error", new Error("There was an error getting the profile for " + username + ". (" + http.STATUS_CODES[response.statusCode] + ")"));
STATUS_CODES is one of the few things node's https doesn't replicate from http, and using https in it's place here is causing the error. (Check the stack trace, it should mention profile.js at or near the top)
Wilson Usman
35,206 PointsSo...
If I change var http = require()
from http to https, I still keep getting the same error.
What is the solution here?
Juan Francisco Andrade Álvarez
23,997 PointsHaving the same issue, i solved it using both https for the API call and http for getting the status code:
............
var https = require("https");
var http = require("http");
..........
var request = https.get("https://teamtreehouse.com/" + username + ".json", function(response) {
var body = "";
if (response.statusCode !== 200) {
request.abort();
//Status Code Error
profileEmitter.emit("error", new Error("There was an error getting the profile for " + username + ". (" + http.STATUS_CODES[response.statusCode] + ")"));
}
...........
I don't know if this is a good practice but solved the issue.....
elk6
22,916 Pointselk6
22,916 PointsHi Anthony,
Can you snapshot your workspace for us? It's the arrow icon next to the eye icon in the workspace window. That way we can see what's going on.
Elian