2014-08-29 2 views
1

Я получаю сообщение об ошибке при ошибке при выполнении запросов API через YouTrackSharp. Это происходит только при запуске на сервере, если я отлаживаю приложение локально (работает на IIS, а не в IIS Express), он проходит надлежащим образом. Кто-нибудь испытал это поведение раньше и какие-либо предложения?YouTrackSharp - EasyHttp Bad Request

Исключение

YouTrackSharp.Infrastructure.InvalidRequestException: Bad Request ---> EasyHttp.Infrastructure.HttpException: BadRequest Bad Request 
    at EasyHttp.Http.HttpClient.ProcessRequest(String filename) 
    at YouTrackSharp.Infrastructure.Connection.MakePostRequest(String command, Object data, String accept) 
    at System.Dynamic.UpdateDelegates.UpdateAndExecuteVoid3[T0,T1,T2](CallSite site, T0 arg0, T1 arg1, T2 arg2) 
    at YouTrackSharp.Issues.IssueManagement.ApplyCommand(String issueId, String command, String comment, Boolean disableNotifications, String runAs) 

телефонный код

issueManagement.ApplyCommand(issue.Id, 
    string.Format("Ready For Testing Versions {0}", version), 
    string.Format("Marked Ready for Testing for {0} build, compiled {1}, by {2}", 
    version, utcDate.ToLocalTime(), user.UserName), 
    true); 

public void ApplyCommand(string issueId, string command, string comment, bool disableNotifications = false, string runAs = "") 
{ 
    if (!_connection.IsAuthenticated) 
    { 
     throw new InvalidRequestException(Language.YouTrackClient_CreateIssue_Not_Logged_In); 
    } 

    try 
    { 
     dynamic commandMessage = new ExpandoObject(); 


     commandMessage.command = command; 
     commandMessage.comment = comment; 
     if (disableNotifications) 
      commandMessage.disableNotifications = disableNotifications; 
     if (!string.IsNullOrWhiteSpace(runAs)) 
      commandMessage.runAs = runAs; 

     _connection.Post(string.Format("issue/{0}/execute", issueId), commandMessage); 
    } 
    catch (HttpException httpException) 
    { 
     throw new InvalidRequestException(httpException.StatusDescription, httpException); 
    } 
} 
+0

Вы можете легко воспроизвести это? если да, можете ли вы использовать Fiddler, чтобы узнать, что такое запрос? – wal

+0

легко? нет, но когда это происходит, это обычно происходит несколько раз, поэтому я увижу, что я могу сделать, чтобы получить захват скрипача и опубликовать его здесь. – invertigo

ответ

0

Проблема закончилась нечетное так как API YouTrack выполнял команду, которую я использовал. Я попал в журналы YouTrack, и там была зарегистрирована ошибка. Word to the wise: проверяйте журналы YouTrack, когда вы видите это сообщение об ошибке.