Пытаюсь настроить asp.net mvc + angularjs приложение. Столкнулся с проблемой, то не могу настроить web api логику. Любые запросы на бэкенд возвращают 404 not found.
Пример метода клиентской части:
$scope.test = function () {
$http.post('/api/Test', "some string")
.then(function (response) {
console.log("Success");
}, function () {
console.log("Failure");
});
}
Бэкенд:
[HttpPost]
[Route("api/Test")]
public void Test(string str) {
var a = str;
}
Также добавлял RoutePrefix на уровне контроллера, но это ситуацию не исправило. Буду признателен, если подскажете где я допустил ошибку.
namespace xmlReader.Controllers {
public class HomeController : Controller {
[HttpPost]
[Route("api/Test")]
public string Test(string str) {
return str;
}
}
namespace webappang
{
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
// Web API configuration and services
// Web API routes
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
}
}
namespace webappang {
public class RouteConfig {
public static void RegisterRoutes(RouteCollection routes) {
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
}
}
Проблема номер раз, вы хотите иметь API, но используете для этого обычный контроллер. Если вы хотите писать API, но наследуйтесь от ApiController
public class TestController : ApiController
{
[HttpPost]
[Route("api/Test")]
public string Index([FromBody] string str)
{
var a = str;
return a;
}
}
Проблема два - вы хотите принимать чисто строку как параметр. Вы можете это сделать, но это немного сложнее, чем принимать Json. Во первых вам понадобится аттрибут [FromBody]
, по вторых вам придется начинать переданную строку со знака =
, например =TestMessage
.
Результат
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
//Помогите реализовать код,чтобы пользователь мог добавлять,редактировать,удалять данные и может быть мою структуру можно правильнее записать?
Я создал небольшую модель в Blender 3D и у этой модели есть два материалаЭкспортировал ее в
Я написал скрипт генерации воксельного мира, в котором после генерации площяди, скрипт соединяет 1 чанк в 1 мешНо этого не происходит т
Я слышал, что менять надо datadir