2016-08-22 5 views
-1

나는 http.get() 요청각도 js에서 http.get()을 http.post()로 변환하는 방법은 무엇입니까?

var ipaddress ="192.160.0.20"; 
var name = "root"; 
var pw ="root"; 
var loginUrl= "http://" + ipaddress + ":8080/managemind/user.cgi?ACTION=login&LOGIN=" + name + "&PASSWORD=" + pw + "&CLIENT_TYPE=mobile&SUBSCRIBER_ID=NotAssigned&MAC_ADDRESS=NotApplicable"; 

내가 get을 사용하고 응답을 받고 다음과 같은 요구를하고있는 중이 야에 URL을 다음했다.

$http.get(createdUrl) 
.then(function(response) {} 

지금 내가 할 post request.How 내 get 요청을 변환 할?

+0

URL에 사용자 자격 증명을 추가하는 경우 (쿼리 문자열을 통해),이를 'post' 본문에 전달해야합니다. – AranS

+1

@AranS 응답 섹션의 질문에 답변 해주십시오. 나는 그것을 할려고했지만 전달할 수 없다 .. 가이드를 내게 – MKY

+0

POST 요청 본문 ('data')에 ** 정확히 ** 있어야하고 쿼리 매개 변수 ('params')로 지정해야하는 것은 무엇인가? ? – Phil

답변

0

post 방법 취약한 데이터 전송을 사용하여 쿼리 문자열 요청 본문에 전달합니다. 이처럼 :

var myUrlWithoutQueryString = ... // here goes your url 
var loginData = { 
    name: ... 
    ps: ... 
    action ... 
    // and so on 
}; 

$http.post(myUrlWithoutQueryString, loginData); 

주의 그 loginData 당신이 (예를 들어 parameteres 일치) 서버 측의 분석 요구 사항을 충족해야 통과하고 있습니다.

+0

* "쿼리 문자열을 분리해야합니다."* <- 사실 일 필요는 없습니다. POST 요청은 쿼리 매개 변수와 본문 데이터를 모두 가질 수 있습니다. 이러한 데이터 조각을 해석하는 방법은 전적으로 서버 측 응용 프로그램에 달려 있습니다. – Phil

+0

또한, OP가 POST body 데이터를'application/x-www-form-urlencoded'로 보낼 필요가 있습니다.하지만 명확한 설명이 필요합니다. – Phil

+0

@Phil에 동의합니다. '필연적으로 중단해야하는 부분'에 대한 나의 실수. 게시물 요청을 통해 데이터를 보내는 것이 특히 사용자 자격 증명을 보낼 때 더욱 적합합니다. 물론 쿼리 문자열을 통해 매개 변수를 보낼 수도 있습니다. – AranS

0

이 떨어져 중단하는 것이 좋습니다 것 $http.post

$http.post(createdUrl) 
.then(function(response) {} 
+0

이 작동하지 않습니다 – MKY

+0

응답이 없습니다. – MKY

+0

@MKY 적어도 브라우저의 * Network * 콘솔에서 일종의 응답을받을 수 있습니다. – Phil

관련 문제