Potrzebuję kontrolera, aby zwrócił JSON do wykorzystania przez JavaScript, więc odziedziczyłem po klasie ApiController
, ale nie zachowuje się tak, jak się spodziewałem. Apress książka Pro ASP.NET MVC 4 i większość przykładów internetowych znalazłem podać przykłady takich jak:Web API route to action name
public class ServicesController : ApiController
{
public string[] MethodFruit()
{
return new string[] { "Apple", "Orange", "Banana" };
}
dostępne poprzez URL:
http://mysite/services/methodfruit
Ale to nigdy nie działa - ISN zasobem nie znaleziono. Jedynym podejściem mogę dostać pracy ma mieć kontroler zawierać inną metodę dla każdego czasownika HTTP, a następnie:
http://mysite/api/services
który wywołuje metody GET.
Sprawdziłem stronę internetową firmy Apress, ale nie mają oni forów, a obecny kod źródłowy jest w VS 2012, którego nie używam. Zbadałem pliki źródłowe i wydaje się, że poprzednie podejście powinno działać. Czy poprzednie podejście nie jest już obsługiwane?
Dzięki. Przeczytam ten dokument. – David
Zrobiłem to samo. Ale chcę, aby ta funkcja została wywołana na żądanie 'POST'. Dodałem do ścieżki '{action}' i dodałem '[AcceptVerbs (" GET "," POST ")]' zamiast '[HttpGet]'. Ale mówi 404, kiedy uzyskuje dostęp do tego API, wysyłając prośbę o wpis. Gdy nie ma problemu z 'GET'. Moja nazwa akcji to 'GetAuthToken'. Naprawdę nie mogę tego rozwiązać. Proszę pomóż. – shashwat
@shashwat sprawdź, czy to rozwiązuje twój problem: http://stackoverflow.com/a/12766431/114029 –