Действие контроллера называется дважды

Я разрабатываю веб-приложение с Laravel, и я столкнулся с этим «странным» поведением. Некоторые действия контроллера вызываются дважды. Я так знаю, потому что в моих журналах я вижу (для одной страницы обновить) два полных набора записей. Мои действия с контроллером начинаются следующим образом:

public function action_edit($rid=-1) {
   //Calc Input
    $id  = Input::get('id', $rid);
    Log::TWICE("?? {$id} - {$rid}");

где $ rid - это идентификатор объекта для редактирования в соответствии с запросом URL-адреса, однако, если я получу идентификатор в своем Вводе, тогда я использую этот идентификатор. Поэтому, когда я вызываю свой контроллер через URL-адрес, например:

.../mycontroller/редактировать/1

Я получаю две записи в файле журнала:

2013-02-07 00:49:15 TWICE - ?? 1 - 1
2013-02-07 00:49:16 TWICE - ?? img - img

Первый - это нормальный, который я должен видеть, но второй, я не понимаю, откуда он. Я проверил, используя инструменты разработчика Chrome (вкладка сети и вкладка консоли), но нет второго запроса! Сначала я подумал, что могу попытаться использовать какой-то ресурс с относительным URL-адресом img или ../img, но я не нашел подсказки. Конечно, img - это имя моей папки с изображениями на моем шаблоне, но в моем коде нет ни одного относительного url img ...

Есть ли у вас какие-либо предложения по этой проблеме? Где еще в моем коде следует проверить/проверить? Что еще может вызвать второй звонок?

NOTE: I am using the following call at some point on my code but the referenced action is 'show' not 'edit'!!

Laravel \ Routing \ Controller :: call ($ controller. '@ Show', ...

Заранее спасибо!

Кастрюля


1
nl ja de
У меня была такая же проблема. см. это решение. надеюсь эта помощь:) ... stackoverflow.com/questions/23422703/…
добавлено автор ivahidmontazer, источник

3 ответы

Вероятно, браузер пытается запросить Favicon .

Попробуйте с завитом, и вы, скорее всего, не увидите запрос.

5
добавлено
вау ... ты спас мне жизнь: D
добавлено автор mostafaznv, источник
Здравствуй! Спасибо за ваш ответ, что вы предлагаете, кажется, правильно, но почему это происходит только в некоторых действиях, а не во всех действиях? В любом случае, просигнализация! Не так ли?
добавлено автор Panais, источник
Хорошо, теперь я полностью понимаю, что происходит. В любом случае favico запрашивается, но когда действие не получает никаких параметров, имя действия заменяется на img , тогда как при наличии параметров действие 1-го параметра заменяется на img
добавлено автор Panais, источник

Это старый вопрос, но я все еще вижу это в верхней части результата Google при поиске решения, поэтому я решил добавить этот ответ после того, как я, наконец, найду проблему.

Текущий ответ, который помечается как правильный, является лишь частично правильным: он связан с изображением, но это не ограничивается Favicon.

Каким-то образом весь основной браузер (по крайней мере, для IE, Firefox и Chrome) решает, что, когда есть пустая ссылка, предоставленная в любое место, которое должно быть изображением, оно сделает его текущим URL-адресом. Некоторые примеры мест, которые могут вызвать проблемы:


<div class="background-image:url()"></div>
<link rel="icon" type="image/x-icon" href="">

Предоставьте ссылку или просто удалите строку, чтобы решить проблему.

0
добавлено

У меня была аналогичная проблема, и причиной этого был брандмауэр Trend Micro, за которым мы были.

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

У этого сообщения есть дополнительная информация

http://community.trendmicro.com/t5/Worry-Free-Business-Security/WFBS-Trend-Micro-sending-our-data-from-an-IP-in-Tokyo/TD-п/15600

Я поговорил с нашим веб-администратором, который сказал, что исключит сайт из проверки сайта TrendMicros

0
добавлено
phpGeeks
phpGeeks
3 620 участник(ов)

Best PHP chat Еще: @dbGeeks - базы данных @phpGeeksJunior - новичкам @moscowProgers - IT Москва @ebanoePhp - весёлый канал о PHP @laravel_pro - Laravel @jobGeeks - вакансии @jsChat - JS Правила: https://t.me/phpGeeks/764859 ДР - 28.03.2016

Laravel Pro
Laravel Pro
3 430 участник(ов)

Официальный чат для всех программистов, работающих с PHP-фреймворком Laravel. Одобрен Тэйлором Вакансии: @fordev @jobgeeks

Laravel Framework Russian Community
Laravel Framework Russian Community
2 350 участник(ов)

Правила. Уважайте друг друга, скриншоты давайте ссылками, большие куски кода выкладывайте на https://implode.io/ Вакансии публикуются в VK группе (vk.com/laravel_rus) с указанием диапазона оплаты труда - здесь даем ссылку. За мат, рекламу - бан.

Laravel для начинающих
Laravel для начинающих
1 658 участник(ов)

Чат для программистов, изучающих PHP-фреймворк Laravel. Здесь не прогоняют новичков. Правила здесь: https://t.me/laravel_web/188295

PHP
PHP
1 309 участник(ов)

Группа про современный PHP. Обсуждаем ООП, TDD, BDD, DDD, SOLID, GRASP и прочие крутые базворды Для ознакомления: https://gist.github.com/mkusher/711bd46f0b62fbae851182e6fb3b1839 Группа PHP для новичков @phpGeeksJunior Вакансии: https://t.me/fordev

PHP — вакансии, поиск работы и аналитика
PHP — вакансии, поиск работы и аналитика
1 251 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению PHP, Laravel, Symfony, Yii и т.д. Здесь всё: full-time, part-time, remote и разовые подработки. См. также: @qa_jobs, @devops_jobs, @javascript_jobs, @nodejs_jobs, @uiux_jobs, @products_jobs

phpGeeksJunior
phpGeeksJunior
980 участник(ов)

Группа для новичков. Не стесняйтесь задавать вопросы по php. Не флудить!!!! Правила и полезные ссылки https://gist.github.com/exileed/a53dd0617b35a705ff44b38c8028e6a5 Бест от пхпгикс https://t.me/best_of_phpgeeks

phpclub.ru
phpclub.ru
872 участник(ов)

Официальный чат phpclub.ru - остерегайтесь подделок #rules Правила группы - уважайте друг друга. Скриншоты -> ссылками. Код -> pastebin.com. Вакансии строго -> https://goo.gl/4bNxym, в чат ссылку. За рекламу и мат - БАН!

Devall | PHP
Devall | PHP
272 участник(ов)

Пристанище для восходящих звёзд разработки, которые перейдут на более адекватные языки. http://combot.org/chat/-1001014863761 Инвайт: j.mp/devallphp

Laravel - вакансии, работа, фриланс
Laravel - вакансии, работа, фриланс
114 участник(ов)

Пишите тут вакансии, заказы. Укажите зарплату или бюджет за проект. Партнёры: @yiijobs, Laravel Answer-ID.com