Ошибка запуска HTTP Post, когда HTTP работает нормально - PullRequest
0 голосов
/ 21 апреля 2020

У меня проблема с методом HTTP post для сохранения некоторых деталей в БД через веб-сервис ASMX.

Вот мой метод сохранения

  createRequest(data:myRequest):Observable<any>{
    //let param:string=JSON.stringify({name:'san'});
    /* const httpoptions={headers:new HttpHeaders({'Content-Type': 'text/plain; charset= utf-8'}),withCredentials:true} */
      return this.client.post('http://localhost:51071/webservice1.asmx/saveCrData',
      JSON.stringify({name:'san'}),
        { headers:new HttpHeaders({'Content-Type':'application/json'}),
          withCredentials:true, responseType: 'json'  }
      );
  }

Вот определение моей функции в asmx

[WebMethod]
public int saveCrData(string name)
{
          return 1;
}

Но это вызывает некоторую ошибку CORS. Ошибка CORS Я действительно считаю, что это не проблема CORS, поскольку у меня есть другой метод get, который работает без проблем. У меня была похожая проблема с CORS, когда я указываю Content-Type как application / json. Но в этом методе POST я понятия не имею, что является причиной проблемы.

Вот мой метод get

  getCrformLocations() {
    //    const headers = new HttpHeaders().set({Content-Type : 'text/plan; charset=utf-8'})
    return this.client.get('http://localhost:51071/webservice1.asmx/getLocation', {
      withCredentials: true,
      responseType: 'json'
    }); //, headers: new HttpHeaders({'Content-Type': 'application/json; charset= utf-8'})
    //.subscribe( (data) => console.log(JSON.stringify(data)));
  }

определение службы

[WebMethod]
    [ScriptMethod(UseHttpGet = true,ResponseFormat =ResponseFormat.Json)]
    public void getLocation() {
//mycode
}

Ошибка enter image description here

Пожалуйста, помогите мне решить этот блок

...