I guess there are more than one way to do it.. but one solution which works pretty good is using a token-based authentication.
The way it works is that once you do your request with username/password to the server you will need to generate access-token which is returned as a response on successful login. After that, you will place this access-token to be part of your subsequent requests to the protected server-side routes which in turn needs to check the access-token validity each time. This check is typically done as a filter or "before_action" as they call it in the Ruby On Rails world.
Nevertheless, the type of token you generate and how you store it varies as well. I've seen implementations in which tokens are saved to database table and the tokens itself are just a random combination of numbers/letters etc. without any real knowledge in it. For this, you most likely need a database table such as "sessions" which has fields like "access_token, user_id, expires_at".. and after that, you can use "expires_at" field to dictate how long the token is valid. And implement things like "refreshing" token duration and even revoking access.. the user_id here is useful, as like with cookie-based authentication, you often need to know the session user at the server.
Here is more explanation about this approach: http://stackoverflow.com/questions/1592534/what-is-token-based-authentication
However, how I would actually do it (today) would be using json web-tokens because they doesn't require reading/writing to database at all. Instead, the secret used to generate the token is stored to server-side and the token itself carry the information of expires_at and a like. You can even place your user_id and other (less critical) information there. You can read more about it here: https://jwt.io/
And finally, you should treat tokens as passwords. Meaning, send them over https connection.