[JQUERY] 어떻게 $ 아약스와 쿼리 문자열 대신 JSON을 보내?
JQUERY어떻게 $ 아약스와 쿼리 문자열 대신 JSON을 보내?
해결법
-
1.먼저 직렬화 JSON에 개체에 JSON.stringify를 사용하고, 서버가 그것의 JSON을 이해 있도록 다음의 contentType을 지정해야합니다. 이 트릭을 수행해야합니다
먼저 직렬화 JSON에 개체에 JSON.stringify를 사용하고, 서버가 그것의 JSON을 이해 있도록 다음의 contentType을 지정해야합니다. 이 트릭을 수행해야합니다
$.ajax({ url: url, type: "POST", data: JSON.stringify(data), contentType: "application/json", complete: callback });
json으로 개체 브라우저를 지원하는 자바 스크립트 1.7 / 인 ECMAScript 5 이상에서 기본적으로 사용할 수 있다는 점에 유의하십시오. 레거시 지원이 필요한 경우에는 json2 사용할 수 있습니다.
-
2.아니, 데이터 유형 옵션은 수신 된 데이터를 분석입니다.
아니, 데이터 유형 옵션은 수신 된 데이터를 분석입니다.
JSON을 게시하려면이 작업은 JSON.stringify 통해 직접 캐릭터 라인 화하고 false로 processData 옵션을 설정해야합니다.
$.ajax({ url: url, type: "POST", data: JSON.stringify(data), processData: false, contentType: "application/json; charset=UTF-8", complete: callback });
참고 모든 브라우저는 JSON 객체를 지원하고, JQuery와 .parseJSON을 가지고 있지만, 그것은 포함 어떤 stringifier이 없다는; 다른 polyfill 라이브러리가 필요합니다.
-
3.내가 ASP.NET MVC 같은 많은 아키텍처를 내장 한의 contentType으로 JSON.stringify을 처리하는 기능을 알고 있지만 내 상황이 조금 다르다 그래서 어쩌면이 미래에 누군가가 도움이 될 수 있습니다. 나는 그것이 나에게 시간을 저장 한 것 알고있다!
내가 ASP.NET MVC 같은 많은 아키텍처를 내장 한의 contentType으로 JSON.stringify을 처리하는 기능을 알고 있지만 내 상황이 조금 다르다 그래서 어쩌면이 미래에 누군가가 도움이 될 수 있습니다. 나는 그것이 나에게 시간을 저장 한 것 알고있다!
내 HTTP 요청은 다른 하위 도메인에 IBM (AS400 환경)에서 CGI API에 의해 처리되고 있기 때문에 이러한 요청은 크로스 기원, 따라서 JSONP 있습니다. 나는 실제로 내 아약스를 통해 자바 스크립트 객체 (들)을 보냅니다. 여기 내 아약스 POST의 예입니다 :
var data = {USER : localProfile, INSTANCE : "HTHACKNEY", PAGE : $('select[name="PAGE"]').val(), TITLE : $("input[name='TITLE']").val(), HTML : html, STARTDATE : $("input[name='STARTDATE']").val(), ENDDATE : $("input[name='ENDDATE']").val(), ARCHIVE : $("input[name='ARCHIVE']").val(), ACTIVE : $("input[name='ACTIVE']").val(), URGENT : $("input[name='URGENT']").val(), AUTHLST : authStr}; //console.log(data); $.ajax({ type: "POST", url: "http://www.domian.com/webservicepgm?callback=?", data: data, dataType:'jsonp' }). done(function(data){ //handle data.WHATEVER });
-
4.당신은 asp.net이 다시 보내고으로 Request.Form의 데이터를 필요로하는 경우 [] 다음에 콘텐츠 형식을 설정해야합니다 "을 application / x-www-form을-urlencoded로; 문자셋 = UTF-8"
당신은 asp.net이 다시 보내고으로 Request.Form의 데이터를 필요로하는 경우 [] 다음에 콘텐츠 형식을 설정해야합니다 "을 application / x-www-form을-urlencoded로; 문자셋 = UTF-8"
여기에 원래의 게시물
당신은 수익을 기대하지 않을 경우 둘째, 데이터 유형의 제거는 POST는 실패하기 전에 약 4 분 동안 기다립니다. 여기를 보아라
from https://stackoverflow.com/questions/12693947/how-to-send-json-instead-of-a-query-string-with-ajax by cc-by-sa and MIT license
'JQUERY' 카테고리의 다른 글
[JQUERY] Reactjs는 jsx에 HTML 문자열을 변환 (0) | 2020.10.03 |
---|---|
[JQUERY] 어떻게 jQuery를 / 자바 스크립트를 사용하여 내 웹 페이지에 내 폴더 중 하나에서 모든 이미지를로드 (0) | 2020.10.03 |
[JQUERY] 대표 VS 라이브 jQuery를 () () [중복] (0) | 2020.10.02 |
[JQUERY] 의 jQuery CSS 속성을 사용하여 배경 이미지 설정 (0) | 2020.10.02 |
[JQUERY] 오브젝트 속성에 기초하여 제거 배열 요소 (0) | 2020.10.02 |