Team Foundation Server: HTTP-код 400 - неверный запрос

у нас проблема с Team Foundation Server. Сообщение об ошибке «HTTP-код 400: неверный запрос» появляется в различных местах (см. вложение со снимками экрана) в Visual Studio (например, после нажатия на «Ожидающие изменения», «Обозреватель управления исходным кодом», «Получить последнюю версию» и т. д.). ).

В нашей компании 3 разработчика. Сообщение об ошибке довольно случайное, иногда оно работает, а затем появляется сообщение об ошибке ... Или сообщение об ошибке появляется только на компьютере 1 и компьютере 2. Третий компьютер в порядке. На следующий день с разработчиком 1 все в порядке, а у двух других появилось сообщение об ошибке ...

Наша среда:

Клиент: 3x ПК, Visual Studio Professional 2015, Windows 10

Сервер TFS: Win2012 R2, TFS 2015 с обновлением 3

SQL Server: SQL 2012 std.

Прикрепленные файлы:

Скриншоты с ошибкой

Еще скриншоты

Журнал wirehark:

Hypertext Transfer Protocol
    POST /tfs/defaultcollection/Services/v3.0/LocationService.asmx HTTP/1.1\r\n
        [Expert Info (Chat/Sequence): POST /tfs/defaultcollection/Services/v3.0/LocationService.asmx HTTP/1.1\r\n]
            [POST /tfs/defaultcollection/Services/v3.0/LocationService.asmx HTTP/1.1\r\n]
            [Severity level: Chat]
            [Group: Sequence]
        Request Method: POST
        Request URI: /tfs/defaultcollection/Services/v3.0/LocationService.asmx
        Request Version: HTTP/1.1
    User-Agent: Team Foundation (devenv.exe, 14.102.25619.0, Pro, SKU:31)\r\n
    X-TFS-Version: 1.0.0.0\r\n
    Accept-Language: cs-CZ\r\n
    X-TFS-Session: eb5ed6e7-04ea-4ae5-8444-211cd145a568, Connect\r\n
    X-VSS-Agent: TFS: af687f1c-d07d-42ca-b185-15a5a10d20ca\r\n
    Content-Type: application/soap+xml; charset=utf-8\r\n
    SOAPAction: "http://microsoft.com/webservices/Connect"\r\n
    Host: tfssrv:8080\r\n
    Content-Length: 244\r\n
        [Content length: 244]
    Expect: 100-continue\r\n
    Accept-Encoding: gzip\r\n
    Connection: Keep-Alive\r\n
    \r\n
    [Full request URI: http://tfssrv:8080/tfs/defaultcollection/Services/v3.0/LocationService.asmx]
    [HTTP request 1/3]
    [Response in frame: 1933]
    [Next request in frame: 1935]
    File Data: 244 bytes

eXtensible Markup Language
    <s:Envelope
        xmlns:s="http://www.w3.org/2003/05/soap-envelope">
        <s:Body>
            <Connect
                xmlns="http://microsoft.com/webservices/">
                <connectOptions>
                    1
                    </connectOptions>
                <lastChangeId>
                    331005
                    </lastChangeId>
                <features>
                    1
                    </features>
                </Connect>
            </s:Body>
        </s:Envelope>



Hypertext Transfer Protocol
    POST /tfs/defaultcollection/Services/v3.0/LocationService.asmx HTTP/1.1\r\n
        [Expert Info (Chat/Sequence): POST /tfs/defaultcollection/Services/v3.0/LocationService.asmx HTTP/1.1\r\n]
            [POST /tfs/defaultcollection/Services/v3.0/LocationService.asmx HTTP/1.1\r\n]
            [Severity level: Chat]
            [Group: Sequence]
        Request Method: POST
        Request URI: /tfs/defaultcollection/Services/v3.0/LocationService.asmx
        Request Version: HTTP/1.1
    User-Agent: Team Foundation (devenv.exe, 14.102.25619.0, Pro, SKU:31)\r\n
    X-TFS-Version: 1.0.0.0\r\n
    Accept-Language: cs-CZ\r\n
    X-TFS-Session: a5d31d36-1b78-4602-b765-e2a7082abef9, Connect\r\n
    X-VSS-Agent: TFS: af687f1c-d07d-42ca-b185-15a5a10d20ca\r\n
    Content-Type: application/soap+xml; charset=utf-8\r\n
    SOAPAction: "http://microsoft.com/webservices/Connect"\r\n
    Host: tfssrv:8080\r\n
    Content-Length: 244\r\n
        [Content length: 244]
    Expect: 100-continue\r\n
    Accept-Encoding: gzip\r\n
    Connection: Keep-Alive\r\n
    \r\n
    [Full request URI: http://tfssrv:8080/tfs/defaultcollection/Services/v3.0/LocationService.asmx]
    [HTTP request 2/2]
    [Response in frame: 695]
    File Data: 244 bytes


Hypertext Transfer Protocol
    HTTP/1.1 400 Bad Request\r\n
        [Expert Info (Chat/Sequence): HTTP/1.1 400 Bad Request\r\n]
            [HTTP/1.1 400 Bad Request\r\n]
            [Severity level: Chat]
            [Group: Sequence]
        Request Version: HTTP/1.1
        Status Code: 400
        Response Phrase: Bad Request
    Content-Type: text/html; charset=us-ascii\r\n
    Server: Microsoft-HTTPAPI/2.0\r\n
    Date: Mon, 31 Oct 2016 13:23:34 GMT\r\n
    Connection: close\r\n
    Content-Length: 326\r\n
        [Content length: 326]
    \r\n
    [HTTP response 2/2]
    [Time since request: 0.000720000 seconds]
    [Prev response in frame: 692]
    [Request in frame: 694]
    File Data: 326 bytes


Line-based text data: text/html
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd">\r\n
    <HTML><HEAD><TITLE>Bad Request</TITLE>\r\n
    <META HTTP-EQUIV="Content-Type" Content="text/html; charset=us-ascii"></HEAD>\r\n
    <BODY><h2>Bad Request - Invalid Verb</h2>\r\n
    <hr><p>HTTP Error 400. The request verb is invalid.</p>\r\n
    </BODY></HTML>\r\n

person Kaspy    schedule 31.10.2016    source источник
comment
Вы используете какой-либо прокси в своей среде?   -  person PatrickLu-MSFT    schedule 01.11.2016


Ответы (4)


Чтобы сузить проблему, вы можете попробовать сбросить сервер IIS. И если вы используете какой-либо прокси, попробуйте удалить прокси и повторите попытку. Также проверьте просмотр событий на сервере TFS, чтобы узнать, есть ли какая-либо информация по устранению неполадок.

Согласно снимку экрана с ошибкой и идентификатору ошибки TF400813. В следующий раз, когда вы не сможете подключиться к TFS через VS, вы можете попробовать следующее:

  1. В правом верхнем углу Visual Studio вы найдете цветное поле с вашим именем или вашими инициалами внутри. щелкните стрелку вниз и выберите Параметры учетной записи. В открывшемся окне нажмите «Выйти» в верхней левой части окна.
  2. После перезапуска Visual Studio и повторного входа ошибка должна исчезнуть.
person PatrickLu-MSFT    schedule 01.11.2016
comment
Привет, Патрик, в журнале событий ничего нет. Мы уже это проверили ... Мы попытались перезапустить сервер IIS, повторно войти в VS, перезапустить VS, мы не используем прокси-сервер ... Ничего не помогает, проблема все еще существует ... - person Kaspy; 07.11.2016
comment
У меня действительно сработал перезапуск IIS. Сразу после успешной установки TFS у меня возникла проблема. Затем перезапустил IIS и смог нормально связать Visual Studio с TFS. - person AshesToAshes; 10.07.2017

У меня была эта проблема, и я обнаружил, что уровень приложения каким-то образом поврежден.

  1. Откройте консоль администрирования TFS, щелкните уровень приложения и просмотрите сводку уровня приложения. У меня было много ошибок, поэтому я щелкнул «Удалить компоненты» (щелкните имя сервера в верхней части дерева), а затем переустановил уровень приложений с помощью параметра «Обновление».
  2. Щелкните «Изменить URL-адреса». Проверьте URL-адрес уведомления и URL-адрес сервера. В моем случае URL-адрес уведомления не работал.
  3. Откройте диспетчер IIS, нажмите «Сайты» -> «Сервер Team Foundation» и нажмите «Привязки» на правой боковой панели.
  4. Добавьте привязку, используя имя хоста, IP-адрес как «Все неназначенные» и порт 8080.
person Eric Yeoman    schedule 01.01.2017

У нас была такая же проблема. Мы обращались к серверу по его имени (tfs.domain.com), и у некоторых членов команды было много ошибок, в основном при регистрации. Мы изменили имя сервера на его ip-адрес, и он заработал.

Это звучит странно, потому что мы смогли получить доступ к http://tfs.domain.com из браузеров, но Visual Studio У TFS были проблемы.

person NurDev    schedule 23.03.2017

Клиентское решение

Если решение по-прежнему сохраняется даже после восстановления сервера TFS, попробуйте выполнить следующие действия.

  1. Откройте Visual Studio от имени администратора.
  2. Откройте обозреватель управления исходным кодом из командного меню.
  3. Выберите раскрывающийся список напротив рабочей области и отредактируйте или создайте новую рабочую область.
  4. Создайте новую папку на диске и прикрепите к новой рабочей области (созданной на шаге 3)
  5. Теперь в папке вашего сервера TFS отображаются все проекты.
  6. Начните получать последнюю информацию из источника.

Надеюсь, ваша ошибка исчезнет.

Примечание. - Перед шагом 1 перезапустите Visual Studio.

person Tahir Alvi    schedule 27.12.2018