Search code examples
meteoriron-router

Router.current().route.getName() is returning an error server side


Router.current().route.getName() is returning an error when I use it in a method call (server side method). I thought they say Iron-Router is supposed to work both client and server side. The error I get is

Error invoking Method 'mySeverSideMethod': Internal server error [500]

Please help.


Solution

  • You are half way right, the router works on both client and server. However the server-side implementation is meant for server side routes (eg. REST endpoints). There is no "state" sharing between client/server with iron:router (when invoked inside methods), so Router.current().route.getName() is going to throw you this error, because Router.current() is undefined.