>

아약스 호출을 사용하여 서버에서 리턴 할 간단한 문자열을 얻는 데 어려움이 있습니다. 아약스에는 404가 없지만 200은 statusText : "OK"입니다.

전체 페이지 HTML이 반환되고 오류 블록으로 넘어갑니다.

포함하도록 구성을 편집했습니다 :

<jsonSerializationmaxJsonLength="2147483647"/>

여기 내 AJAX가 있습니다 :

$(function () {
    $.ajax({
        type: 'GET',
        contentType: "application/json; charset=utf-8",
        url: $(location).attr('href') + "/GetYard",
        dataType: "json",
        success: OnSuccess,
        failure: function (response) {
            alert(response.d);
        },
        error: function (response) {
            alert(response.d);
        }
    });
});
function OnSuccess(response) {
    console.log(response);
}

내 VB.Net 코드 :

<WebMethod>
Public Shared Function GetYard() As String
    Return "TEST"
    'HttpContext.Current.Response.BufferOutput = True
    'HttpContext.Current.Response.ContentType = "application/json"
    'HttpContext.Current.Response.Write("Test")
    'HttpContext.Current.Response.Flush()
End Function


  • 답변 # 1

    스크립트 관리자에서 EnablePageMethods 옵션이 켜져 있어야합니다.

    <asp:ScriptManager .. EnablePageMethods="True" />
    
    

    성공적으로 HTML을 반환하면 (댓글 참조) EnablePageMethods 또는 다른 구성 옵션을 켜야한다는 의미 일 것입니다.

    완료되었는지 확인하십시오. 여기에 온라인 예제가 있지만 "GET"이 아닌 "POST"를 유형으로 사용한다는 사실 외에는 접근 방식이 반영된 것 같습니다.

관련 자료

  • 이전 c# - SystemWindowsMediaMatrix는 SystemDouble 정밀 64 비트 숫자를 사용하지 않습니까?
  • 다음 c# - Nunit-console 잘못된 매개 변수