Вы пропустите конечную точку, так как она не знает, что такое JsonString.Вы отправили JSON, но в модели контроллера вы сказали ему прослушивать строку.Откройте Chrome (или другие) инструменты разработчика и посмотрите ТОЧНО, что вы отправляете с запросом.
Вот еще один совет:
$http({
method: 'post',
url: serviceBasePath + "/api/suscribe",
data: parameter,
headers: { 'Content-Type': 'application/json' }
}).then(function (response) {
userService.SetCurrentUser(response.data);
defer.resolve(response.data);
}, function (error) {
defer.reject(error.data);
})
Я много раз видел злоупотребление обещаниями ТАК,Зачем вам использовать $ http (что само по себе обещание), а затем обработать его в сервисе и вернуть ДРУГОЕ обещание?Вы можете просто вернуть $ http (и разрешить его обещания в контроллере. Вам все равно придется разрешить эти новые обещания, которые вы возвращаете, так что зачем делать дополнительный шаг.
return $http({
method: 'post',
url: serviceBasePath + "/api/suscribe",
data: parameter,
headers: { 'Content-Type': 'application/json' }
}).then(function (response) {
userService.SetCurrentUser(response.data);
return response.data;
}, function (error) {
return error.data;
})
Таким образом, вы возвращаете все$ http и вы указываете, что возвращать в случае успеха и ошибки. Поскольку это обещание, оно будет вести себя так же, как и раньше.