Is it a good solution to use primary key

Viewed 57

I want to create my own pet simple project (news site). I have several questions:

  1. Is it a incorrect to use primary key of DB entity in the url of the page? ("/atricles/{id}/{article.name}"). Articles can have same name, so i can't do ("/articles/{article.name}") or i should create unique BIGINT number in DB to solve problem with deleting and finding articles.("/articles/{specilaUniqueNumber}/{Name}")
1 Answers

As far as I have used in web developing of an API when I use a POST request I provide an id as a db entry. This id can be used for a PUT request so we know what entry we need to modify. This entry id which is generated by me in the POST, can be returned in POST response, so the developer who uses the API can use it in a next PUT request to define to API what entry of the db wants to modify. But as I said this is given to the response of the POST request, which is hidden by the POST response and not free in all users eyes in the URL.

If we use it in the URL this means that we use a GET request. I don't think it is so safe to expose it to everyone's eyes. You should create as you said a url with all the generally accepted characters that will not contain the real id of your entry in the db.

If you want to provide this id to the API as I said you can do it by POST reply hidden in every users eyes. The url has to be something that someone can press to get your page.

I don't know if you understand what I want to say to you. Ask me if you want. But in the question you don't say anything where and how you use this id in the url. What Framework and what application you develop. That is why I told you my way of story. I presumed that you develop restful services.

Related