Bonjour à tous,

Je développe un site web avec angularjs et une API.
J'ai décidé d'utiliser le $RouteProvider pour "naviguer" sur le site, où uniquement le <body> change lorsque l'on clique sur les liens de navigation.

Mais depuis que j'ai fait ça, plusieurs problèmes sont apparues où bien sont à venir.

Le fait d'avoir un seul <head> uniquement pour un ensemble de pages (partials) qui seront chargées ne pose t'il pas un gros problème pour le référencement naturel ?
(Par exemple: avoir un <title> Page1</title> différent pour chaque partial)

Lorsqu'un GoogleBot vient "crawler" mon site, le fait qu'il soit en single-page ne pose t'il pas problème puisque l'ensemble des pages (partials) ne sont pas visible ? Le contenu n'apparaissant pas...
(Après recherche, je crois quand faisant un !# le GoogleBot serait notifié qu'il s'agit d'une page avec un contenu à charger)

La navigation se faisait via des liens, ex: <a href="#/profil"> , comment faire lorsque l'on a par exemple un système de notifications qui fonctionne avec des <a href="#"> ?
(Supprimer les <a href="#"> semble la solution, mais dans ce cas, pourquoi toujours mettre des <a href="#"> lorsque l'on reste sur sa page quand on développe en général ?)
Nom : prob.png
Affichages : 198
Taille : 48,4 Ko

allow-control-allow-origin:
Lorsque je charge une nouvelle page (partial), les services $http avec en méthode GET ne fonctionnent pas :
L’en-tête de demande authorization n’est pas présent dans la liste Access-Control-Allow-Headers.
XMLHttpRequest: Erreur réseau 0x80070005, Accès refusé.

Et les services $http avec en méthode POST ne fonctionnent pas non plus :
XMLHttpRequest pour http://exemple.com:1337/request nécessite une spécification CORS (Cross Origin Resource Sharing).
XMLHttpRequest pour http://exemple.com:1337/request nécessite une spécification CORS préliminaire.

L’en-tête de demande authorization n’est pas présent dans la liste Access-Control-Allow-Headers.
XMLHttpRequest: Erreur réseau 0x80070005, Accès refusé.

Serait-ce un problème de sécurité lié au serveur ?
Après avoir installer un plugin pour autoriser le "controll origin", les services $http fonctionnent, mais je ne vais pas demander à mes utilisateurs d'installer ce plugin...

https://chrome.google.com/webstore/d...jhddihlkkiljbi


Merci pour vos réponse, j'avoue être assez paumé, implémenter un $routeprovider pour faire un site en single-page semble entraîner énormément de problématiques.