Jump to content

Node + Express + Angular Kā pareizi atgriezt 404 lapu


AndrisBB
 Share

Recommended Posts

Ir kāds kurš darbojas ar node.js, angular un varētu palīdzēt? Kā pareizi izveidot 404 lapu?

 

Piemēram, ja kods izskatās šādi un ja es eju uz root addresi, tad viss ir forši, index.html agriežas un tālāk jau visa navigācija tiek kontrolēta no angular, pieprasot no servera tikai vajadzīgos datus caur api.

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

app.use(express.static(__dirname + '/public'));

// Defaultais route
app.get('/', function(req, res) {
	res.sendFile('index.html');
});

// Api lai no angular iegutu useru sarakstu
app.get('/api/users', function(req, res) {
	User.find({}, function(err, users) {
		res.json(users);
	});
});

.........

app.get('*', function(req, res) {
console.log("=========== 404 ================");
//res.send("404 not found", 404);
res.sendFile(__dirname + "/public/index.html");
});

Ko darīt ja piemēram tiek ievadīta neeksistējoša adrese? Uz doto mirkli protams Express atgriez defaulto error ziņojumu.

Ja es pievienoju route priekš visiem citiem gadījumiem un atgriežu index.html, tad rodas 2 problēmas:

  1.  Ar html failu viss kārtībā, bet visi asseti (css, js) protams vairs nelādējas, jo nepareizs url Atrisināts, biju nepareizu relatīvo adresi norādijis uz css mapi
  2. Ja pieņemsim izdodas atrisināt assetu problēmu, tad kā paziņot angular ka bij ievadīts neeksistējoš url? 
Labots - AndrisBB
Link to comment
Share on other sites

Izveido kontu, vai pieraksties esošajā, lai komentētu

Jums ir jābūt šī foruma biedram, lai varētu komentēt tēmas

Izveidot jaunu kontu

Piereģistrējies un izveido jaunu kontu, tas būs viegli!

Reģistrēt jaunu kontu

Pierakstīties

Jums jau ir konts? Pierakstieties tajā šeit!

Pierakstīties tagad!
 Share

×
×
  • Izveidot jaunu...