Using parameters in routes
I see two problems. First your routing file has the path set to:

path: '/{user}/settoken'


To do what you're describing I would expect to see:

path: '/u/{user}/settoken'


Second, are you opposed to using a second parameter in the URL instead of the Get Method variable? If not opposed you can add a second parameter that will handle the 'token' variable.

In your routing file you can set up the pareters like this:

path: '/u/{user}/settoken/{token}'


The url would then be (cleaner I think):

/u/john-smith-36/settoken/123456


Lastly, to access the parmeters in your controller you shouldn't need to access the Globals. The parameters get passed to your function directly. Use this as the function declaration to pick up the variables:

public function SavePushToken($user, $token)