Web-API: Die angeforderte Ressource unterstützt die HTTP-Methode 'GET' nicht

8

Ich habe einen API-Controller in meinem MVC4-Projekt erstellt

Hier ist die Methode, die ich erstellt habe, um die Funktionalität der API zu testen

%Vor%

Wenn ich versuche, mit localhost:xxxx/api/controllerName/Login?id=2 auf diese API zuzugreifen, bekomme ich

  

{"$ id": "1", "Message": "Die angeforderte Ressource unterstützt die HTTP-Methode 'GET' nicht."}

Was mache ich falsch?

Auch hier ist meine API-Konfigurationsdatei

%Vor%     
ylinkz 16.03.2013, 22:41
quelle

3 Antworten

19

Ändern Sie den Methodenmodifikator von privat in öffentlich, und fügen Sie der Aktion die entsprechenden Accept-Verben hinzu

%Vor%

Wechseln zu:

%Vor%     
gdoron 16.03.2013, 22:44
quelle
3

Sie können auch HTTP-Methoden in der Datei web.config innerhalb des Tags system.webserver:

akzeptieren %Vor%     
tonymayoral 29.03.2013 18:17
quelle
1

Zusätzlich zu der derzeit akzeptierten Antwort, das Attribut [HttpGet] hinzuzufügen, um die Methode öffentlich zu machen, müssen Sie sicherstellen, dass Sie den richtigen Namespace verwenden:

  • MVC-Controller verwenden System.Web.Mvc
  • WebAPI-Controller verwenden System.Web.Http
Jay bennie 27.07.2017 14:12
quelle