복붙노트

[JQUERY] GetJson JQuery에서 인코딩을 설정하는 방법

JQUERY

GetJson JQuery에서 인코딩을 설정하는 방법

해결법


  1. 1.나는 아마도 $ .ajax ()를 사용해야한다고 생각합니다. 인코딩을 변경하려면 아래 contentType param을 참조하십시오 (성공 및 오류 콜백은
    가 있다고 가정합니다.
    HTML에서 :

    나는 아마도 $ .ajax ()를 사용해야한다고 생각합니다. 인코딩을 변경하려면 아래 contentType param을 참조하십시오 (성공 및 오류 콜백은

    가 있다고 가정합니다.
    HTML에서 :

    $.ajax({
        type: "POST",
        url: "SomePage.aspx/GetSomeObjects",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        data: "{id: '" + someId + "'}",
        success: function(json) {
            $("#success").html("json.length=" + json.length);
            itemAddCallback(json);
        },
        error: function (xhr, textStatus, errorThrown) {
            $("#error").html(xhr.responseText);
        }
    });
    

    나는 실제로 1 시간 전에이 일을해야만했는데, 일치하는 것은 무엇입니까!


  2. 2.$ .getjson ()을 사용하려면 다음을 수행하기 전에 다음을 추가 할 수 있습니다.

    $ .getjson ()을 사용하려면 다음을 수행하기 전에 다음을 추가 할 수 있습니다.

    $.ajaxSetup({
        scriptCharset: "utf-8",
        contentType: "application/json; charset=utf-8"
    });
    

    UTF-8 대신 원하는 문자 세트를 사용할 수 있습니다.

    옵션에 대해 설명합니다.

    contentType : 서버에 데이터를 보낼 때이 콘텐츠 유형을 사용하십시오. 기본값은 응용 프로그램 / x-www-form-Urlencoded입니다. 대부분의 경우 괜찮습니다.

    ScriptCharset : JSONP 또는 스크립트 데이터 유형을 사용하여 요청에만 해당됩니다. 요청을 특정 charset으로 해석하도록합니다. 원격 및 로컬 콘텐츠 간의 charset 차이에만 필요합니다.

    하나 또는 둘 다 필요할 수 있습니다 ...


  3. 3.Wireshark를 사용하여 JSON 호출을 분석해야하므로 JSON 페이지의 형성에 문자 세트를 포함하는지 여부를 알 수 있습니다.

    Wireshark를 사용하여 JSON 호출을 분석해야하므로 JSON 페이지의 형성에 문자 세트를 포함하는지 여부를 알 수 있습니다.

    0000  48 54 54 50 2f 31 2e 31  20 32 30 30 20 4f 4b 0d   HTTP/1.1  200 OK.
    0010  0a 43 6f 6e 74 65 6e 74  2d 54 79 70 65 3a 20 74   .Content -Type: t
    0020  65 78 74 2f 68 74 6d 6c  0d 0a 43 61 63 68 65 2d   ext/html ..Cache-
    0030  43 6f 6e 74 72 6f 6c 3a  20 6e 6f 2d 63 61 63 68   Control:  no-cach
    
    0000  48 54 54 50 2f 31 2e 31  20 32 30 30 20 4f 4b 0d   HTTP/1.1  200 OK.
    0010  0a 43 61 63 68 65 2d 43  6f 6e 74 72 6f 6c 3a 20   .Cache-C ontrol: 
    0020  6e 6f 2d 63 61 63 68 65  0d 0a 43 6f 6e 74 65 6e   no-cache ..Conten
    0030  74 2d 54 79 70 65 3a 20  74 65 78 74 2f 68 74 6d   t-Type:  text/htm
    0040  6c 3b 20 63 68 61 72 73  65 74 3d 49 53 4f 2d 38   l; chars et=ISO-8
    0050  38 35 39 2d 31 0d 0a 43  6f 6e 6e 65 63 74 69 6f   859-1..C onnectio
    

    왜 그런 겁니까? 우리는 JSON 페이지를 다음과 같은 목표에 넣을 수 없기 때문입니다.

    내 경우에 나는 제조업체를 사용하여 9210 Digi를 연결합니다.

    JSON이 통과 한 데이터를 UTF-8에 전달 한 다음 페이지에서 변환을 다시 실행하지 않고도 저에게 일했습니다 ...


  4. 4.클라이언트 JS에서 encodeuri ()를 사용하고 Server Java Side에서 UrldeCoder.decode ()를 사용하십시오.

    클라이언트 JS에서 encodeuri ()를 사용하고 Server Java Side에서 UrldeCoder.decode ()를 사용하십시오.

    예:


  5. 5.f $ .getJSON ()을 사용하려면 다음을 수행하기 전에 다음을 추가 할 수 있습니다.

    f $ .getJSON ()을 사용하려면 다음을 수행하기 전에 다음을 추가 할 수 있습니다.

    $.ajaxSetup({
        scriptCharset: "utf-8",
        contentType: "application/json; charset=utf-8"
    });
    

  6. 6.이 기능을 사용하여 UTF-8 문자를 다시 얻습니다.

    이 기능을 사용하여 UTF-8 문자를 다시 얻습니다.

    function decode_utf8(s) { 
      return decodeURIComponent(escape(s)); 
    }
    

    예: var new_str = decode_utf8 (str);

  7. from https://stackoverflow.com/questions/26620/how-to-set-encoding-in-getjson-jquery by cc-by-sa and MIT license