나는 웹 API (2)를 생성하고 난 여기에 크로스 도메인 요청을 할 노력하고있어하지만 난 다음 오류 받고 있어요 :옵션 405 (방법 허용되지 않음) 웹 API를 2
OPTIONS http://www.example.com/api/save 405 (Method Not Allowed)
I을 주변의 모양이 있고이 문제에 대한 가장 해상도가 나는 NuGet에서 상시 관측소를 설치하고 활성화해야한다는 말을 그래서 나는 패키지를 설치하고
[EnableCors("*", "*", "*")]
내 컨트롤러를 표시하지만이 여전히 해결되지 않은 문제.
내 ApiController
만 가지고에서 다음 Save
방법 :
[ResponseType(typeof(int))]
public IHttpActionResult Save(Student student)
{
if (ModelState.IsValid)
{
using (StudentHelper helper = new StudentHelper())
{
return Ok(helper.SaveStudent(student));
}
}
else
{
return BadRequest(ModelState);
}
}
이 다른 도메인에서 내 JS입니다 :
$.ajax({
type: "POST",
crossDomain: true,
data: JSON.stringify(student),
crossDomain: true,
url: 'http://www.example.com/api/save',
contentType: "application/json",
success: function (result) {
console.log(result);
}
});
내가이 가능하도록 할 필요가 뭔가 다른 있나요?
문제가 해결되지 않아 피할 수 있습니다. 프리 플라이트 OPTIONS 요청을 실제로 지원해야하는 사용자에게는 유용하지 않습니다. – defines
@defines 이것은 내 문제를 해결하므로 downvote를 할 필요가 없다. 내 문제는 프리 플라이트를 지원할 필요가 없기 때문에 간단한 요청이 필요하다는 것이다. 누군가 프리 플라이트를 지원하는 방법을 찾고 있다면,이 질문은 그것에 관한 것이 아니라, 내 아약스 전화로 내 웹 API와 대화 할 수있는 방법에 관한 것입니다. 응답은 간단한 요청을하는 것이지, 지원을 사용하지 않는 것입니다. 프리 플라이트 –
질문의 제목은 405를 반환하는 OPTIONS에 대한 것입니다. OPTIONS 요청을 피할 수 있습니다. 이것은 전혀 그것에 대한 대답이 아니며 간단히 피할 수 있습니다. – defines