The requested resource does not support http method 'GET'
-
Good Day All i have a web api with a controller like this
public class RegistrationController : ApiController
{ \[System.Web.Http.AcceptVerbs("GET", "POST")\] \[System.Web.Http.HttpGet\] public int Get(\[FromBody\]Registration model) { try { GetMyContact.Services.Database.Database db = new Database.Database(); db.RegisterUser(model); var response = Request.CreateResponse(HttpStatusCode.Created, string.Empty); string uri = Url.Link("DefaultApi", new { id = model.USER\_ID }); response.Headers.Location = new Uri(uri); return model.USER\_ID; } catch(Exception ex) { HttpStatusCode statusCode = HttpStatusCode.BadRequest; var errResponse = Request.CreateResponse(statusCode, ex.Message); throw new HttpResponseException(errResponse); } } }
and the config is like this
config.Routes.MapHttpRoute(
name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = RouteParameter.Optional } );
and i am testing it using the following URL just to see if i will hit that breakpoint http://localhost:39194/api/Registration but i get the following error on the browser The requested resource does not support http method 'GET'. Thanks
Vuyiswa Maseko, Spoted in Daniweb-- Sorry to rant. I hate websites. They are just wierd. They don't behave like normal code. C#/VB.NET/ASP.NET/SQL7/2000/2005/2008 http://www.vimalsoft.com vuyiswa[at]vimalsoft.com
-
Good Day All i have a web api with a controller like this
public class RegistrationController : ApiController
{ \[System.Web.Http.AcceptVerbs("GET", "POST")\] \[System.Web.Http.HttpGet\] public int Get(\[FromBody\]Registration model) { try { GetMyContact.Services.Database.Database db = new Database.Database(); db.RegisterUser(model); var response = Request.CreateResponse(HttpStatusCode.Created, string.Empty); string uri = Url.Link("DefaultApi", new { id = model.USER\_ID }); response.Headers.Location = new Uri(uri); return model.USER\_ID; } catch(Exception ex) { HttpStatusCode statusCode = HttpStatusCode.BadRequest; var errResponse = Request.CreateResponse(statusCode, ex.Message); throw new HttpResponseException(errResponse); } } }
and the config is like this
config.Routes.MapHttpRoute(
name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = RouteParameter.Optional } );
and i am testing it using the following URL just to see if i will hit that breakpoint http://localhost:39194/api/Registration but i get the following error on the browser The requested resource does not support http method 'GET'. Thanks
Vuyiswa Maseko, Spoted in Daniweb-- Sorry to rant. I hate websites. They are just wierd. They don't behave like normal code. C#/VB.NET/ASP.NET/SQL7/2000/2005/2008 http://www.vimalsoft.com vuyiswa[at]vimalsoft.com
Try executing it by removing ,
[System.Web.Http.AcceptVerbs("GET", "POST")]
[System.Web.Http.HttpGet]Since your action name is Get , it will automatically be executed with Get Verb.
Thanks Do not forget to comment and rate the article if it helped you by any means.