> 웹 프론트엔드 > JS 튜토리얼 > jQuery 없이 AngularJS에서 URL 인코딩 데이터를 게시하는 방법은 무엇입니까?

jQuery 없이 AngularJS에서 URL 인코딩 데이터를 게시하는 방법은 무엇입니까?

DDD
풀어 주다: 2024-12-04 03:20:11
원래의
148명이 탐색했습니다.

How to POST URL-Encoded Data in AngularJS without jQuery?

jQuery 없이 $http로 URL 인코딩 데이터 게시

AngularJS 초보자로서 당신은 jQuery 없이 AJAX 요청을 할 수 있는 방법을 찾고 있습니다. jQuery에 의존합니다. $.param을 사용한 초기 접근 방식은 효과가 있었지만 jQuery 종속성을 제거하고 싶습니다.

데이터 및 매개 변수를 사용한 후속 시도는 원하는 결과를 얻지 못했고 JSON 문자열화도 실패했습니다. AngularJS는 확실히 이에 대한 방법을 제공하므로 솔루션을 살펴보겠습니다.

URL 매개변수에 대한 데이터 변환

POST를 통해 양식 데이터를 보내는 핵심은 개체를 변환하는 것입니다. 데이터를 URL 매개변수로 변환합니다. AngularJS는 요청 본문을 보내기 전에 사용자 정의할 수 있는 변환 요청 함수를 제공합니다.

변환이 포함된 게시물 요청의 예

$http({
    method: 'POST',
    url: url,
    headers: {'Content-Type': 'application/x-www-form-urlencoded'},
    transformRequest: function(obj) {
        var str = [];
        for(var p in obj)
        str.push(encodeURIComponent(p) + "=&" + encodeURIComponent(obj[p]));
        return str.join("&");
    },
    data: {username: $scope.userName, password: $scope.password}
}).then(function () {});
로그인 후 복사

이 예에서는

  • transformRequest 함수는 제공된 객체를 반복하여 각 키를 인코딩하고 value.
  • 인코딩된 키-값 쌍은 앰퍼샌드(&)로 구분된 단일 문자열로 결합됩니다.

AngularJS 1.4 및 Beyond

AngularJS 1.4 이상에서는 이 프로세스를 더욱 단순화하기 위한 새로운 서비스가 도입되었습니다. 그러나 위의 접근 방식은 이전 버전에서도 유효한 솔루션으로 남아 있습니다.

위 내용은 jQuery 없이 AngularJS에서 URL 인코딩 데이터를 게시하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿