I've developed a single page application with AngularJS where all requests are directed to the index.html. Angular then handles the routing and pulls data from a set of API endpoints for display.
The site's title, SEO metadata, and description are also obtained in the same manner. However, there is a challenge as the API endpoint resides on a different domain, resulting in cross-origin requests by the SPA.
While everything functions smoothly for users, Google crawls do not capture the metadata or title; instead, they only show the Angular tags. Upon reviewing the site logs, it appears that Google bot only initiates an OPTIONS request without proceeding to the actual GET.
How can I ensure that Google properly indexes the page?
For reference, here is a screenshot illustrating the issue:
https://i.sstatic.net/nYNz8.png
You can visit the website at
Your assistance would be greatly appreciated.
NOTE: While I understand that generating static HTML using PhantomJS could resolve this, my aim is to have Google index the page correctly, as they claim to crawl AngularJS apps effectively.
I've achieved similar functionality in the past, but without cross-domain requests; could that be the underlying issue?