Удалите localhost из URL-адреса, хранящегося в базе данных

#reactjs

Вопрос:

У меня есть ссылка, которая хранится в базе данных. Когда я нажму на ссылку, она будет включать localhost:3000,. Например, у меня есть www.test.com в базе данных, так что это будет localhost:3000/www.test.com. Как удалить localhost:3000 с URL-адреса?

 <a href={item.projurl}>{item.projurl}</a>
 

Комментарии:

1. Вам необходимо проверить такие ссылки, чтобы они имели надлежащий протокол … http:// или https:// . Вы можете вставить это в адресную строку браузера без него, и браузер включит его, но не тогда, когда он используется в href . Без протокола браузер рассматривает его как относительный путь в текущем домене

Ответ №1:

По умолчанию браузеры используют относительные URL-адреса. Вам нужно либо сохранить полный URL-адрес, включая схему/протокол, в своей базе данных, либо указать браузеру использовать неявный протокол // , добавив его .

Неявный протокол

 const item = {
  projurl: 'www.test.com'
}
<a href={`//${item.projurl}`} target="_blank" rel="noopener noreferrer">{item.projurl}</a>
 

Полный URL-адрес

 const item = {
  projurl: 'http://www.test.com'
}
<a href={item.projurl} target="_blank" rel="noopener noreferrer">{item.projurl}</a>