Я создал расширение TFS 2017, использующее Angular Framework. В расширении есть таблица со столбцом для идентификатора рабочего элемента. При нажатии на этот идентификатор требуется открыть рабочий элемент.
Событие click передает идентификатор рабочего элемента методу компонента Angular. Тот метод, который имеет следующее окно. 8080/tfs/коллекция/проект/_workitems?_a=edit&id=" + id, "_blank");
Это открывает новое окно, но я получаю «TFS400813: ресурс недоступен для анонимного доступа. Требуется проверка подлинности клиента». ошибка. Если я возьму тот же URL-адрес и вставлю его в другой браузер, я смогу получить доступ к рабочему элементу.
1 ответ
Согласно вашему описанию, похоже, что ваш другой браузер кэшировал вашу личную аутентификацию, а затем он работает и успешно открывает URL-адрес.
TFS400813: ресурс недоступен для анонимного доступа. Требуется аутентификация клиента.
Для такого рода ошибок, если вы используете токен PAT для обработки аутентификации. Поскольку вы используете PAT с локальным сервером TFS, убедитесь, что вы уже отключили обычную аутентификацию на сервере. В противном случае вы получите возвращенную ошибку.
Мы рекомендуем всегда отключать базовую аутентификацию IIS при использовании Azure DevOps Server. Только при необходимости вы должны включить базовую аутентификацию IIS. Когда базовая аутентификация IIS включена на вашем компьютере с Windows, она не позволяет использовать персональные маркеры доступа (PAT) в качестве механизма аутентификации.
Если это не работает, проверьте, не находитесь ли вы за прокси. Будет ли прокси причиной проблемы? Попробуйте обойти прокси при использовании в исходном браузере.
Также попробуйте очистить кеш браузера, это может помочь. Кроме того, вы также можете собирать и анализировать журналы скрипачей во время действия с открытым рабочим элементом. Этот тип журналов должен помочь в устранении неполадок.
Похожие вопросы
Новые вопросы
angular
Вопросы об Angular (не путать с AngularJS), веб-фреймворке от Google. Используйте этот тег для вопросов Angular, которые не относятся к отдельной версии. Для более старой веб-инфраструктуры AngularJS (1.x) используйте тег AngularJS.