rest api wcf включить метод cors не допускается - PullRequest
0 голосов
/ 18 января 2019

у меня ниже в wcf webconfig

 <httpProtocol>
      <customHeaders>
        <add name="Access-Control-Allow-Origin" value="*" />
        <add name="Access-Control-Allow-Headers" value="Content-Type, Accept" />
        <add name="Access-Control-Allow-Methods" value="POST,GET,OPTIONS" />
        <add name="Access-Control-Max-Age" value="1728000"/>
      </customHeaders>
    </httpProtocol>

сервис

 [OperationContract]
        [WebInvoke(Method = "POST", UriTemplate = "getItem", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)]
        [Description("Fetch item from database.")]

Угловой 6 звонящий

this.http.post('http://localhost:49823/service.svc/getItem?authkey=key',
  {
   json data
}
  ).subscribe(data => {console.log(data) },err => {
    console.log(err);
  });

Перехватчик

request = request.clone({
      setHeaders: {
         'Content-Type': 'application/json'
      }
    });

выдает ошибку

Доступ к XMLHttpRequest по адресу http://localhost:49823/service.svc/getitem?authkey=key5' от происхождения 'http://localhost:4200' заблокирован политикой CORS: Ответ на предполётный запрос не проходит проверку контроля доступа: не имеет HTTP ok статус.

Служба WCF работает на 49823, а Angular 6 - на 4200.

Не могу понять, что является причиной проблемы, так как уже включены cors в wcf.

Это нормально работает в POSTMAN

...