Просмотр определений типов — Visual Studio (Windows)
- Статья
Область применения:Visual StudioVisual Studio для Mac Visual Studio Code
Разработчикам часто требуется просмотреть определения типов или элементы классов исходного кода, которые они используют в своем коде. Функции Visual Studio Перейти к определению и Показать определение позволяют легко просмотреть определение типа или члена. Если исходный код недоступен, вместо него отображаются метаданные.
Перейти к определению
Функция Перейти к определению переходит к источнику типа или члена и открывает результат на новой вкладке. Если вы привыкли работать с клавиатурой, поместите текстовый курсор внутрь имени символа, а затем нажмите клавишу F12. Если вы привыкли работать с мышью, выберите пункт Перейти к определению в контекстном меню или используйте описанное в следующем разделе сочетание CTRL+щелчок.
Перейти к определению с помощью CTRL+щелчок
Используйте CTRL+щелчок, чтобы быстро получить доступ к функции Перейти к определению. Символы становятся доступными для щелчка, когда вы нажимаете клавишу CTRL и наводите курсор на тип или член. Чтобы быстро перейти к определению символа, нажмите клавишу CTRL и щелкните его. Все просто!
Вы можете изменить клавишу-модификатор для функции Перейти к определению, вызываемой по щелчку мышью, последовательно выбрав пункты Сервис>Параметры>Текстовый редактор>Общие и выбрав значение ALT или CTRL+ALT в раскрывающемся списке Использовать клавишу-модификатор. Вы также можете отключить активацию функции Перейти к определению по щелчку мышью, сняв флажок Разрешить выполнение перехода к определению с помощью щелчка мыши.
Показать определение
Функция Показать определение позволяет просмотреть определение типа, не покидая текущее расположение в редакторе. Если вы привыкли работать с клавиатурой, поместите текстовый курсор внутрь имени типа или члена, а затем нажмите клавиши ALT+F12. Если вы привыкли работать с мышью, выберите пункт Показать определение в контекстном меню.
Чтобы включить использование CTRL+щелчок, перейдите в раздел Сервис>Параметры>Текстовый редактор>Общие. Выберите параметр Открыть определение в быстром редакторе и нажмите кнопку ОК, чтобы закрыть диалоговое окно Параметры.
Затем нажмите клавишу CTRL (или ту клавишу-модификатор, которая выбрана в меню Параметры) и щелкните тип или член.
Если вы просматриваете другое определение из всплывающего окна, вы начнете путь иерархической навигации, по которому можно перемещаться с помощью кругов и стрелок, расположенных над всплывающим окном.
Дополнительные сведения см. в статье Практическое руководство. Просмотр и изменение кода с помощью окна «Показать определение» (ALT+F12).
Просмотр метаданных в виде исходного кода (C#)
Когда вы просматриваете определения типов или элементов C#, исходный код которых недоступен, вместо кода отображаются их метаданные. Вы можете просматривать объявления типов и элементов, но не можете видеть их реализации.
Если запустить команду Перейти к определению или Показать определение для элемента, исходный код которого недоступен, в редакторе кода откроется документ с вкладками, содержащий представление метаданных этого элемента в виде исходного кода. Имя типа, после которого следует текст [из метаданных], будет показано на вкладке документа.
Например, если запустить команду Перейти к определению для элемента Console, метаданные Console отобразятся в редакторе кода в виде исходного кода на языке C#. Этот код похож на объявление этого элемента, но не показывает реализацию.
Примечание
При попытке выполнить команду Перейти к определению или Показать определение для типов или элементов, помеченных как внутренние, Visual Studio не позволит просмотреть их метаданные в виде исходного кода, даже если сборка, к которой выполняется обращение, является дружественной.
Просмотр декомпилированных исходных определений вместо метаданных (C#)
Вы можете выбрать вариант отображения декомпилированного исходного кода при просмотре определения типа или члена C#, код которого недоступен. Чтобы включить эту функцию, выберите в строке меню Инструменты>Параметры. Затем разверните раздел Текстовый редактор>C#>Дополнительнои выберите Enable navigation to decompiled sources (Включить навигацию к декомпилированным источникам).
Примечание
Visual Studio восстанавливает тексты методов с помощью декомпиляции ILSpy. При первом использовании этой функции вы должны принять заявление об отказе от ответственности, которое касается законов о лицензировании программного обеспечения, авторском праве и товарных знаках.
См. также
- Навигация по коду
- Практическое руководство. Просмотр и изменение кода с помощью окна «Показать определение» (ALT+F12)
Промокоды, случайно оставленные в исходном коде веб-сайта / Хабр
Не так давно я обнаружил онлайн-магазин, нагло лгущий о количестве людей, просматривающих его товары. Его исходный код содержал функцию JavaScript, рандомизировавшую это число. После моей статьи администраторы магазина втихомолку удалили этот код с веб-сайта.Сегодня мы снова будем изучать исходный код веб-сайта, но теперь в нём не будет ничего мошеннического. Сайт, который я покажу сегодня, просто раскрыл тайные промокоды в своём публичном коде.
Мы исследуем сайт сети крытых аквапарков Great Wolf Lodge, однако должен сообщить, что веб-сайты довольно часто раскрывают свою внутреннюю информацию в плохом коде.
Я буду объяснять каждый свой шаг, чтобы вы могли сами использовать описанные в статье способы для исследования исходного кода других веб-сайтов. И поверьте мне, в исходном коде можно найти всевозможные любопытные подробности.
Вот что мы сделаем:
- Изучим исходный код Great Wolf, где найдём ссылки на промокоды, которые проверим.
- Попробуем использовать один из промокодов на веб-сайте и перехватим URL, передаваемый веб-браузеру.
- Спойлер: в конечном итоге, мы найдём работающий промокод.
Изучаем исходный код
Давайте начнём с того, что доберёмся до объекта изучения: Great Wolf. Нажмём правой клавишей мыши в любом месте веб-сайта и выберем «View source» («Просмотреть код»). Нажмём CTRL+F (или CMD+F) для поиска по коду и введём в поле поиска «promocode». Я нашёл две переменные, которые мне показались особо интересными:dealPromoCodeApiUrl
и promoCodeList
. Первая переменная содержит частичный URL, указывающий на файл JSON (файл с какими-то структурированными данными), в котором могут содержаться промо-коды. Вторая переменная — это массив (коллекция) промокодов.Если взять URL, найденный в первой переменной, и добавить в его начало «greatwolf.com», то мы получим такой URL: https://www.greatwolf.com/content/experience-fragments/gwl/poconos/experience-fragment/master/_jcr_content/root/plan.json.
На момент написания статьи при переходе на этот URL меня приветствовали четыре разных промокода:
Если открыть URL в браузере, то данные могут и не выглядеть такими структурированными, как у меня. В некоторых браузерах есть встроенная функция просмотра JSON, но в большинстве её нет. Однако у каждого популярного десктопного браузера есть расширения, которые можно установить для более красивого отображения файлов JSON, поэтому достаточно перейти в магазин расширений/приложений своего браузера и поискать по запросу JSON.
Давайте запомним эти коды, а пока проверим ещё одну переменную:promoCodeList
. Мы уже знаем её содержимое благодаря изучению исходного кода, но можно отобразить его удобнее с помощью консоли браузера. Откроем инструменты разработчика браузера, которые в большинстве браузеров под Windows открываются нажатием F12. Также в большинстве компьютеров и браузеров можно нажать правой кнопкой мыши в любом месте веб-сайта и выбрать что-то вроде «Inspect element» («Исследовать элемент»). Открыв инструменты разработчика, выберем «Console» («Консоль»). Затем мы можем ввести «promoCodeList» и нажать Enter, после чего увидим ещё пять промокодов:
Давайте попробуем использовать один из них. В верхней части главной страницы Great Wolf есть опция поиска доступных дат. Я поискал даты, выбрал одного посетителя и ввёл обнаруженный ранее промокод: PROMO20.Общаемся с веб-сервером
Мне всегда любопытно следить за тем, как данные перемещаются между браузером и веб-сервером, поэтому давайте перейдём во вкладку «Network» («Сеть») инструментов разработчика. Выберем «XHR», чтобы посмотреть, какие данные перемещаются между страницей и веб-сервером. Если вкладка пуста, обновите страницу. После этого вкладка сети заполнится вызовами API. Аббревиатуры наподобие XHR и API по сути означают, что веб-сайт общается с сервером.Сетевые вызовы Great Wolf.Большинство из них не представляет особого интереса, но моё внимание привлекла выделенная строка. В ней написано «availability» («доступность») и похоже, что она отправляет интересные данные. Если нажать на неё, браузер покажет URL, который использует веб-сайт для запроса у сервера свободных номеров в отеле.
Если нажать на URL, открытый в этой вкладке сети на момент написания, мы окажемся на ещё одной странице, заполненной данными. Результаты на этой странице содержат номера, которые свободны на выбранные даты. Удобно, что в начале данных есть информация, связанная с промокодом. Там указан код ошибки, сообщающей, что предложение недоступно (это мы и так знаем).Данные, найденные на Great Wolf.К сожалению, эти данные не особо интересны, но URL упрощает проверку других промокодов. Если изучить URL, то можно увидеть часть «offerCode=PROMO20». Можно или ввести другой промокод, или перезагрузить URL, чтобы проверить его. Не долго думая, я начал их проверять. Один из найденных ранее промокодов сработал: «FLING40». На момент написания статьи можно было нажать сюда и получить такой отзыв:
Данные, обнаруженные на Great Wolf.И в самом деле, если вернуться на веб-сайт и ввести промокод, то можно убедиться, что он применён:
Миссия выполнена.Стоит также заметить, что некоторые из найденных нами ранее промокодов указаны прямым текстом на странице Deals сайта Great Wolf. Однако кода FLING40, который я использовал, там нет.
Подведём итог
Мы использовали очень простые методики, чтобы найти промокоды для веб-сайта бронирования номеров. Изучив исходный код, мы нашли несколько интересных переменных JavaScript. Мы проверили их и нашли несколько скрытых промокодов. Также мы обнаружили URL для общения с веб-сервером Great Wolf, позволивший быстрее тестировать коды. В конечном итоге, мы нашли сработавший скрытый промокод.Вы можете задаться вопросом, почему вообще промокоды просто лежали в каких-то переменных публичного исходного кода. На то может быть множество причин, но по своему опыту работы разработчиком могу сказать, что обычно это вызвано проблемами менеджмента. Причинами подобного раскрытия данных могут быть короткие дедлайны, отсутствие этапа тщательного тестирования, расширение функциональности на поздних этапах разработки или плохо написанное техзадание.
Кроме того, поскольку данные не нанесут урона, возможно, не было причин их удалять. Это невинная ошибка, которая встречается чаще, чем можно себе представить. Разумеется, стоит упомянуть и то, что промокоды могли оставить в коде намеренно, как гениальный трюк для привлечения внимания или повышения продаж. Но мне кажется, что это маловероятно.
Как бы то ни было, надеюсь, вы узнали что-то новое. Удачной вам охоты на интересности в исходном коде других сайтов.
На правах рекламы
Эпично! Уже через минуту после заказа, вы можете получить облачный vps сервер на базе новейших процессоров AMD EPYC для размещения проектов любой сложности, от корпоративных сетей и игровых проектов до лендингов и VPN.Подписывайтесь на наш чат в Telegram.
Как найти код с помощью Inspect Element (Chrome, IE, Firefox, Safari)
Одним из самых полезных инструментов для веб-разработчика является инструмент Inspect Element . Это позволяет вам быстро перейти к важной части кода, чтобы увидеть, что там происходит.
Это то, что я использую больше, чем любой другой инструмент.
Самое приятное то, что он позволяет вам видеть, что происходит в окончательной визуализации веб-страницы.
Если вы смотрите только на серверную часть или в файл style.css, вы можете пропустить важный фрагмент кода, который полностью меняет то, как пользователь увидит эту часть страницы.
Как открыть Inspect Element в браузерах Windows (Chrome, Firefox, IE): Процесс для всех браузеров в Windows одинаков. Вы щелкаете правой кнопкой мыши и выбираете тот, который начинается с «Проверить».
Перейти к руководству для вашего браузера:
- Chrome
- Firefox
- Internet Explorer
- Microsoft Edge
- Safari (Mac)
Как найти код с помощью Chrome In Spector
Щелкните правой кнопкой мыши часть веб-страницу, для которой вы хотите увидеть исходный код, затем нажмите «Проверить».
В качестве альтернативы, чтобы открыть инспектор, не переходя к определенной части, нажмите Ctrl + Shift + I .
Где-то на странице вы увидите инспектора. Скорее всего, он пристыкуется к нижней части, но вы можете изменить положение, щелкнув многоточие (…) рядом с X в верхней части окна Инспектора.
Если вы хотите просмотреть другую часть страницы или не щелкнули в нужном месте, щелкните значок с полем и стрелкой в левом верхнем углу Инспектора, затем наведите указатель мыши на область страницу, которую вы хотите просмотреть. Щелкните левой кнопкой мыши, когда вы находитесь в нужном месте.
Вы увидите обновление кода позиции, на которую вы навели курсор.
Кроме того, вы можете прокрутить окно кода, найти и щелкнуть фактический код, который вам нужен. Это может быть удобно, если есть проблемы с позиционированием или вы имеете дело со скрытым элементом.
Как найти код с помощью Firefox Inspect Element
Щелкните правой кнопкой мыши часть страницы, которую вы хотите просмотреть, и выберите «Проверить элемент» во всплывающем окне.
Вы увидите окно Inspect Element, возможно, в нижней части окна браузера.
Если вы хотите изменить положение окна Inspect Element, щелкните многоточие (…) в правом верхнем углу окна и выберите свое положение.
Если вы хотите увидеть другую часть кода или изначально не щелкнули в нужном месте, щелкните значок с квадратом и стрелкой, затем наведите указатель мыши, пока не дойдете до нужного элемента.
Код в окне кода Inspect Element будет перемещаться в ответ на движение мыши. Просто щелкните левой кнопкой мыши, когда вы находитесь в нужном месте, чтобы остановить выделение.
Как найти код с помощью инструментов разработчика Internet Explorer
Щелкните правой кнопкой мыши область, которую хотите просмотреть, затем выберите «Проверить элемент» во всплывающем меню.
В качестве альтернативы, при активном браузере Internet Explorer (просто щелкните в любом месте браузера, если это не так), нажмите F12 , чтобы открыть Инструменты разработчика.
Если вы использовали Inspect element , вы должны увидеть выделенный код этой части.
Для просмотра других частей кода или если вы попали в Инструменты разработчика с помощью F12 , щелкните значок с прямоугольником и странным треугольником в верхнем левом углу окна инструментов разработчика.
Наведите указатель мыши на область, которую хотите просмотреть. Он будет обновлять позицию в окне кода, когда вы перемещаете мышь. Щелкните левой кнопкой мыши, когда вы находитесь в правильном положении.
Как получить и использовать инструменты разработчика Microsoft Edge
Когда Microsoft Edge активен (щелкните в любом месте браузера, если он не активен), нажмите F12 на клавиатуре. Это откроет инструменты разработчика и спросит вас, хотите ли вы добавить «Проверить элемент» во всплывающее меню.
При первом открытии Microsoft Edge, если вы ранее не использовали Инструменты разработчика, вы не увидите Проверка элемента при щелчке правой кнопкой мыши.
Вы должны нажать F12 на клавиатуре. Это вызовет инструменты разработчика, а также панель внизу, сообщающую вам, что теперь вы можете использовать «Проверить элемент» в контекстном меню. Нажмите «ОК», чтобы закрыть это.
Теперь, когда в следующий раз вы будете в Microsoft Edge и щелкните элемент правой кнопкой мыши, вы увидите «Проверить элемент».
Инструменты разработчика в Microsoft Edge по умолчанию располагаются справа. Я предпочитаю его внизу. Если вы предпочитаете эту конфигурацию, кнопка находится в правом верхнем углу окна инструментов разработчика.
Если вы хотите увидеть разные части кода или если вы попали в Инструменты разработчика, нажав F12 , щелкните значок с прямоугольником и треугольником, чтобы вызвать средство выбора.
Наведите указатель мыши на страницу, чтобы перейти к той части, которую вы хотите увидеть. Щелкните левой кнопкой мыши, чтобы отключить средство выбора.
Вы также можете прокрутить код и щелкнуть интересующую вас часть.
Как найти код с помощью Inspect Element в Safari на Mac
Удерживайте Ctrl и щелкните часть веб-сайта, которую вы хотите просмотреть в коде. Нажмите «Проверить элемент», чтобы вызвать инспектор. Или нажмите Alt+Cmd+I (⌥⌘I), чтобы открыть Инспектор.
Если вы не видите эту опцию или ярлык не работает, вам нужно включить меню разработчика.
Перейдите в Safari -> Настройки (⌘,):
Убедитесь, что установлен флажок «Показать меню «Разработка» в строке меню». Это будет работать с Safari 10 и выше.
Когда все будет готово, попробуйте еще раз нажать комбинацию ⌥⌘I, чтобы вызвать Инспектора.
Вы увидите Инспектора в нижней части экрана в Safari. Если вы хотите изменить положение Инспектора, щелкните один из двух значков в верхнем левом углу Инспектора рядом с x.
Если вы хотите перейти к другой части кода или вызвали Инспектор с помощью сочетания клавиш, щелкните значок области в правом верхнем углу окна Инспектора.
Наведите указатель мыши на веб-страницу, чтобы перейти к той части кода, которую вы хотите просмотреть.
7 забавных вещей, которые вы можете делать с Inspect Element
Человеку, незнакомому с кодированием, несложно испугаться, случайно открыв Inspect Element. Однако, если вы сохраняете спокойствие после просмотра сложного кода, Inspect Element позволяет выполнять множество полезных (и некоторых не очень полезных) действий, если вы знаете, как это делать.
Здесь мы рассмотрим семь забавных вещей, которые вы можете сделать, используя инструменты разработчика вашего браузера и Inspect Element.
Что такое элемент проверки?
Inspect Element — это инструмент разработчика, предлагаемый браузерами для просмотра и временного изменения исходного кода любой веб-страницы. С помощью этого инструмента разработчики и дизайнеры могут проверять и изменять интерфейс любого веб-сайта.
По мере изменения кода браузер продолжает обновлять веб-страницу в режиме реального времени. Это изменение действует только до тех пор, пока вы находитесь на веб-сайте, и видно только вам на одном устройстве. Все изменения будут удалены, как только вы покинете веб-страницу.
1. Загрузка изображений и видео
Обычно вы можете легко загрузить фотографии из Интернета, щелкнув их правой кнопкой мыши и сохранив их. Но вы не можете сделать это на всех сайтах. В этом случае пригодится функция Inspect Element.
Чтобы загрузить любой медиафайл, щелкните его правой кнопкой мыши и выберите Проверить . Разверните теги
Связано: Как загрузить встроенные Flash-видео и музыку с помощью браузера
Вместо того, чтобы создавать поддельное изображение с нуля, вы можете использовать DevTools, чтобы изменить текст на веб-странице и разыграть своих друзей.
Чтобы создать поддельную веб-страницу, откройте любую страницу известного веб-сайта и щелкните правой кнопкой мыши ее заголовок. Затем нажмите Inspect , чтобы открыть панель. Щелкните значок Еще выделенного кода и выберите Редактировать как HTML 9. 0014 . Затем замените заголовок своим фальшивым заголовком.
Точно так же вы можете изменить другие части текста, такие как выдержка, дата и имя автора. Чтобы изменить изображение, удалите источник изображения, выполнив те же действия. Затем найдите связанное изображение в Google, скопируйте его адрес изображения и вставьте в источник.
Таким образом, вы сможете без особых проблем разыграть своих друзей. Однако обязательно отправьте снимок экрана со скрытой панелью DevTools вместо ссылки, так как изменение является временным.
3. Изменение цветов и шрифта веб-страницы
Еще одна хитрая вещь, которую вы можете сделать с помощью Inspect Element, — это изменить цвета и шрифт любой веб-страницы. Щелкните правой кнопкой мыши объект, цвета которого вы хотите изменить, и выберите Inspect . Затем во вкладке Стили найдите цвет или цвет фона и введите шестнадцатеричный код. Точно так же вы можете изменить размер и стиль шрифта на вкладке «Стили».
Вы можете использовать этот трюк, чтобы изменить внешний вид любого веб-сайта и сделать его удобным для чтения. Например, вы можете создать темный режим любого веб-сайта, увеличить размер шрифта для повышения читабельности и удалить навязчивые элементы, удалив их.
Связано: Как найти шрифт веб-страницы с помощью инструмента Inspect Element и расширений браузера
4. Просмотр скрытых паролей
Если какой-либо веб-сайт скрыл ваш пароль звездочками, вы можете изменить код веб-страницы, чтобы просмотреть его. Перейдите к DevTools , щелкнув правой кнопкой мыши скрытый пароль. Затем в теге ввода измените тип с пароля на текст и щелкните пустой экран. Теперь ваш пароль виден.
Этот трюк пригодится, когда вы забыли свой пароль, но сохранили его в менеджере паролей. Таким образом, вы можете просмотреть и запомнить свой пароль прямо с веб-страницы.
5. Просмотр мобильной версии веб-сайта
Все мы знаем, как просматривать настольную версию сайта на мобильном телефоне. Но вы также можете использовать Inspect Element для просмотра мобильной версии на компьютере. Для этого откройте DevTools и нажмите кнопку Toggle Device Toolbar (вторая кнопка сверху справа).
Точно так же вы можете переключать пользовательские агенты и просматривать разные версии веб-сайта. В инструментах разработчика щелкните значок More в верхнем левом углу и выберите условия сети. Снимите флажок Использовать браузер по умолчанию в разделе User Agent и выбрать любой другой пользовательский агент в раскрывающемся меню ниже.
6. Выберите цвета с веб-сайта
Вместо установки стороннего расширения выбора цвета теперь вы можете выбирать свои любимые цвета с помощью Inspect Element. Чтобы выбрать любой цвет с веб-страницы, перейдите к Inspect Element . Затем перейдите на вкладку Стили и найдите цвет или фон. Теперь нажмите на маленькое поле после цвета, чтобы вызвать палитру цветов.
Теперь вы можете щелкнуть в любом месте страницы, чтобы выбрать цвет и скопировать шестнадцатеричный код с вкладки Стили . Если вам нужен код RGB или HSLA, вы можете просмотреть их с помощью кнопок со стрелками .
Итак, всякий раз, когда вы видите отличный цвет на любом веб-сайте, который вы, возможно, захотите использовать в будущем, просто используйте Inspect Element и сохраните код для справки.
Связано: Как включить «Проверить элемент» и «Просмотреть исходный код» в Edge
7. Делайте снимки экрана без каких-либо расширений
DevTools также позволяет делать чистые и четкие скриншоты. Чтобы сделать снимок экрана, откройте
Выбрав снимок экрана области, вы можете выделить любую конкретную область в окне, и ваш браузер сохранит ее в виде файла PNG.