The Automatic Development of SEO-Friendly Single Page Applications Based on HIJAX Approach

  • Siamak HatamiEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10570)


In this study, we provide a method and develop a library for the automatic development of single-page web applications or SPA–based websites. The SPA–based websites run AJAX calls and client-side scripts while search engines do not run scripts within pages. Thus, SPA–based websites are not completely indexed by search engine crawlers. It is necessary that all AJAX requests in web applications can also be requested by static links. We propose a method that suggests all ajax fine-grained calls are also indicated in links URLs. This method allows us to design a SEO-friendly SPA-based website without any client-side programming. Moreover, a new feature is provided that helps to load several pages, as subpages, inside a page in both server-side and client-side. This nested loading can be repeated without any limitation. Each page’s (or subpage’s) URL, as a client-side application state presentation, has a specific query string parameter which specifies its subpages’ addresses. Besides, all links inside the page have a specific query string parameter which indicates the application state of the client-side.


Single page application (SPA) Dynamic web pages Search engine optimization (SEO) Web crawler 


  1. 1.
    Garrett, J.J.: Ajax: a new approach to web applications (2005)Google Scholar
  2. 2.
    Work, S.: How loading time affects your bottom line. KISSmetrics (2011)Google Scholar
  3. 3.
    Fink, G., Flatow, I.: SPA concepts and architecture. In: Pro Single Page Application Development, pp. 49–66. Apress (2014)Google Scholar
  4. 4.
    Raghavan, S., Garcia-Molina, H.: Crawling the hidden web. Stanford (2000)Google Scholar
  5. 5.
    Daniela, F., Alon, L., Alberto, M.: Database techniques for the world wide web. Sigmod Rec. 32(3), 59–74 (2005)Google Scholar
  6. 6.
    BrightPlanet, L.L.C.: The Deep Web: Surfacing Hidden Value (2000).
  7. 7.
    Frey, G.: Indexing Ajax web applications. Doctoral dissertation, ETH Department of Computer Science, Institute of Computational Sciences (2007)Google Scholar
  8. 8.
    Mesbah, A., Bozdag, E., Van Deursen, A.: Crawling Ajax by inferring user interface state changes. In: 2008 Eighth International Conference on Web Engineering, ICWE 2008, pp. 122–134. IEEE, July 2008Google Scholar
  9. 9.
    Mesbah, A., Van Deursen, A., Lenselink, S.: Crawling Ajax-based web applications through dynamic analysis of user interface state changes. ACM Trans. Web (TWEB) 6(1), 3 (2012)Google Scholar
  10. 10.
    Petersson, J.: Designing and implementing an architecture for single-page applications in Javascript and HTML5 (2012)Google Scholar
  11. 11.
    Dan Webb, Twitter, Twitter engineering blog, 29 May 2012. 11 June 2012
  12. 12.
    Duda, C., Frey, G., Kossmann, D., Zhou, C.: Ajaxsearch: crawling, indexing and searching web 2.0 applications. Proc. VLDB Endow. 1(2), 1440–1443 (2008)CrossRefGoogle Scholar
  13. 13.
    Duda, C., Frey, G., Kossmann, D., Matter, R., Zhou, C.: Ajax crawl: making Ajax applications searchable. In: 2009 IEEE 25th International Conference on Data Engineering, ICDE 2009, pp. 78–89. IEEE, March 2009Google Scholar
  14. 14.
    Le Hégaret, P., Whitmer, R., Wood, L.: Document object model (dom) (2002). W3C recommendation, January 2005.
  15. 15.
    Cui, L.J., He, H., Xuan, H.W.: Analysis and implementation of an Ajax-enabled web crawler. Int. J. Future Generat. Commun. Network. 6(2), 139–146 (2013)Google Scholar
  16. 16.
    Mesbah, A., Van Deursen, A. Migrating multi-page web applications to single-page Ajax interfaces. In: 2007 11th European Conference on Software Maintenance and Reengineering, CSMR 2007, pp. 181–190. IEEE, March 2007Google Scholar
  17. 17.
    Sadjadee, S.: Meteor framework, a new approach to webdevelopment: an experimental analysis (2014)Google Scholar
  18. 18.
    Keith, J.: Hijax: progressive enhancement with Ajax. Proceedings of X Tech (2006)Google Scholar
  19. 19.
    Fink, G., Flatow, I.: Search engine optimization for SPAs. In: Pro Single Page Application Development, pp. 267–276. Apress (2014)Google Scholar
  20. 20.
  21. 21.
    Lawrence, S., Giles, C.L.: Searching the world wide web. Science 280(5360), 98–100 (1998)CrossRefGoogle Scholar
  22. 22.
    Zakas, N.C., Yahoo.: How many users have JavaScript disabled. YDN Blog, 13 October 2010 (2010). 15 August 2012

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  1. 1.Department of Computer Engineering and Information TechnologyUniv. Amirkabir (Tehran Polytechnic)TehranIran

Personalised recommendations