Wie debuggen Sie MVC 4-API-Routen?
Ich habe ein WP7-Spiel, das RESTsharp verwendet, um mit meinem MVC4-RESTful-Server zu kommunizieren, aber ich habe häufig Probleme, Anfragen zu stellen, die funktionieren, und deshalb möchte ich debuggen, wo es fehlschlägt.
Dies ist ein Beispiel, in dem der Konstruktor auf meinemGameController
getroffen wird, aber diePost
Methode ist nicht getroffen, und ich verstehe nicht warum.
Kundencode:
public void JoinRandomGame()
{
client = new RestClient
{
CookieContainer = new CookieContainer(),
BaseUrl = "http://localhost:21688/api/",
};
client.Authenticator = GetAuth();
RestRequest request = new RestRequest(Method.POST)
{
RequestFormat = DataFormat.Json,
Resource = "game/"
};
client.PostAsync(request, (response, ds) =>
{});
}
Servercode:
public void Post(int id)
{
if (ControllerContext.Request.Headers.Authorization == null)
{
//No auth
}
if (!loginManager.VerifyLogin(ControllerContext.Request.Headers.Authorization.Parameter))
{
//Failed login
}
string username;
string password;
LoginManager.DecodeBase64(ControllerContext.Request.Headers.Authorization.Parameter, out username, out password);
gameManager.JoinRandomGame(username);
}
Meine Routen sind so
routes.MapHttpRoute(
name: "gameAPI",
routeTemplate: "api/game/{gameId}",
defaults: new
{
controller = "game",
gameId = RouteParameter.Optional
}
);