Мне нужен контроллер, чтобы возвращать JSON для использования JavaScript, поэтому я унаследовал от класса ApiController
, но он не ведет себя так, как я ожидал. Книга Apress Pro ASP.NET MVC 4 и большинство онлайн примеров я нашел привести примеры, как:URL-адрес веб-API для имени действия
public class ServicesController : ApiController
{
public string[] MethodFruit()
{
return new string[] { "Apple", "Orange", "Banana" };
}
доступны через URL:
http://mysite/services/methodfruit
Но это никогда не работает - ресурс ISN Не нашел. Единственный подход, который я могу получить работу, чтобы иметь контроллер содержит другой метод для каждого глагола HTTP, а затем:
http://mysite/api/services
Что вызывает метод GET.
Я проверил сайт Apress, но у них нет форумов и текущий исходный код находится в VS 2012, который я не использую. Я изучил исходные файлы, и они, похоже, думают, что прежний подход должен работать. Не поддерживается ли прежний подход?
Спасибо. Я прочитаю этот документ. – David
Я сделал то же самое. Но я хочу, чтобы эта функция вызывалась по запросу «POST». Я добавил '{action}' в маршрут и добавил '[AcceptVerbs (« GET »,« POST »)]' вместо '[HttpGet]'. Но он говорит 404 при доступе к этому API, делая запрос на отправку. Когда нет проблемы с 'GET'. Мое имя действия - «GetAuthToken». Я действительно не могу решить эту проблему. Пожалуйста помоги. – shashwat
@shashwat проверить, если это решает вашу проблему: http://stackoverflow.com/a/12766431/114029 –