MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

защо получавам favicon.ico, когато използвам метода findOne за експресни маршрути с параметри?

Когато посетите уебсайт (който и да е URL адрес на този уебсайт), браузърът обикновено също изпраща заявка до същия домейн за /favicon.ico затова вижте дали уеб сайтът предлага икона, която да бъде визуално представяне на сайта.

Тъй като използвате маршрут от най-високо ниво със заместващи знаци:

app.get('/:listRoute', ...)

Това ще бъде засегнато от заявката за /favicon.ico . Някои други URL адреси, за които също може да се наложи да внимавате, са:/robots.txt , /humans.txt , /sitemap.xml , /ads.txt .

Има няколко начина да заобиколите това:

  1. Вашият маршрут със заместващи знаци може първо да провери req.url или req.params.listRoute за да видите дали това е нещо, което трябва да игнорира.

  2. Можете да поставите други маршрути от най-високо ниво, които искате да държите извън вашия маршрут със заместващи знаци, на позиция преди този маршрут, така че да не попаднат в този.

  3. Не използвайте маршрут с заместващи знаци от най-високо ниво. Вместо това използвайте нещо като /list/:listRoute така че няма да съответства автоматично на никаква http заявка от най-високо ниво. Използването на маршрут с заместващи знаци от най-високо ниво пречи на други бъдещи употреби на вашия сайт и може да създаде обратна съвместимост в бъдеще, когато искате да добавите други маршрути от най-високо ниво към вашия сайт. Представете си, че някога в бъдеще искате да добавите /contact или /login или /logout . Всички те са в конфликт с /:listRoute .



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB MapReduce заключва ли базата данни

  2. Как да създам индекси за дата?

  3. Има ли някакви предимства от използването на персонализиран _id за документи в MongoDB?

  4. Възел js POST Грешка при заявка Грешка [ERR_HTTP_HEADERS_SENT]:Не могат да се зададат заглавки, след като са изпратени до клиента

  5. Как да създадете схема на мангуста динамично?