2016-09-27 3 views
0

URL을 API 컨트롤러 POST 메서드에 문자열 매개 변수로 전달하려고합니다. 그러나 URL에 특수 문자 ':'로 인해 '잠재적으로 위험한 요청'오류가 발생합니다. // XXXXXXXXX/.../... 등 AJAX 호출을 통해 APIController에 매개 변수로 URL을 전달하는 방법은 무엇입니까?

내가에 encodeURI을 시도했지만 여전히 실패 : S | URL의

형식은 'HTTP 될 것입니다.

$.ajax({ 
    type: "POST", 
    url: "http://localhost:101/api/Sample/" + encodeURI(url), 
    contentType: "application/json; charset=utf-8", 
    dataType: "json".... 
}) 

답변

0

당신이 데이터를 게시 할 Asuming "http://localhost:101/api/Sample/"당신이 게시물 요청의 요청 본체에에 encodeURI (URL)를 추가해야합니다. 예를 들면.

var formData = {urlParameter:encodeURI(url)}; //Json 
$.ajax({ 
    url : "http://localhost:101/api/Sample/", 
    type: "POST", 
    data : formData, 
    success: function(data, textStatus, jqXHR) 
    { 
     //handle success 
    }, 
    error: function (jqXHR, textStatus, errorThrown) 
    { 
     //Handle error 
    } 
}); 

게시 할 샘플 방법에는 formData 변수의 json에 지정된 매개 변수와 부식되는 매개 변수가 있어야합니다.

+0

정말 고마워요! 그게 .. .. :) –

관련 문제