2017-01-30 6 views
6

Я использую Angular 2 со стороны клиента и на стороне сервера Asp.NET Web API на стороне сервера.Получение ошибки «JSONP-инъекционный скрипт не вызывал обратного вызова». используя ядро ​​Angular 2 и Server ASP.NET

Я сделал простые почтовые звонки от клиента Angular 2 к основному веб-API ASP.NET, как показано в приведенном ниже коде.

 this.http. 
      post("/api/Patient", data, options) 
      .map(res => res.json()) 
      .subscribe(
      res => this.CallBack(res), 
      err => this.logError(err)); 

На мой серверный ASP-код WebAPI, как показано ниже.

public IActionResult Post() 
{ 
// I am using EF and inserting to DB 
// Till here everything works fine. 
return Ok(obj); 
} 

Когда пост произойдет, мы получим ошибку ниже

сетка :: ERR_CONNECTION_RESET

Данные Вставляется но когда объект собирается возвратить сервер просто отказывается. Также, когда я углубился в ошибку, я увидел ниже.

«Введенный сценарий JSONP не вызывал обратного вызова». JSONP_ERR_WRONG_METHOD: «Запросы JSONP должны использовать метод запроса GET». JSONP_HOME

В моей локации он работает, а иногда он падает. Я размещаю в настоящее время на httpwww.smarterasp.net, и на этом сервере эта ошибка частая.

Любые указатели приветствуются.

+0

это может помочь https://github.com/angular/angular/issues/8153 – CoderHawk

+0

Спасибо @CoderHawk за помощью. В этом выпуске у них есть запрос JSONP, я делаю запрос JSON. Не уверен, почему мне нужно иметь дело с JSONP. –

+0

Не могли бы вы перекрестить проверку, тот же пост-запрос работает правильно с почтовым клиентом ?? –

ответ

0

Я знаю, это звучит смешно. Но исправление как это в POST, а не возврат объекта, мы отправили сериализованную строку JSON.

public string Post() // <-- this was first a object we changed to string 
{ 
// I am using EF and inserting to DB 
// Till here everything works fine. 
    return SerializedString; 
} 

Мы уверены, что это было связано с вопросами хостинга www.smarterasp.net

Смежные вопросы