Blackberry webworks 응용 프로그램을 개발 중이며 서버를 만들고있는 AJAX 요청에 문제가 있습니다. 나는 HTML/Javascript/AJAX를 즉시 배우고 있으므로 초보자 실수는 변명의 여지가있다. 기본적으로 형식화 된 HTTP 요청은 서버에서 수행되며,이 서버는 애플리케이션에서 사용하는 JSON 객체를 반환합니다. 어떤 종류의 프레임 워크 없이도 AJAX를 사용하여 요청을합니다. 대부분의 요청은 인증 될 필요가 없으며 정상적으로 반환됩니다. 그러나 서버의 디렉토리 부분에 액세스하려면 사용자 이름과 비밀번호가 인코딩되어 XMLHTTPRequest와 함께 헤더로 보내집니다. 헤더를 추가하려고하면 요청이 보내지 만 다시는 아무것도 얻지 못합니다. readyState 속성은 1로 설정되어 있지만 결코 넘어서는 것은 아닙니다. 나는 서버가 잘 작동한다는 것을 안다. 왜냐하면 나는 아이폰에서 똑같은 일을했기 때문이다.Blackberry Webworks에서 헤더가있는 AJAX 요청을 전송하는 데 문제가 있습니다.
function grabFromServer(httpRequest){
httpConnection = new XMLHttpRequest();
var me = this;
httpConnection.onreadystatechange=function(){
alert(httpConnection.readyState);
if(httpConnection.readyState==4){
me.processResponseText(httpConnection.responseText);
}
};
httpConnection.open("GET", httpRequest,true);
if(this.request == "company" || this.request == "property" || this.request == "individual"){
var authorized = this.checkCredentials();
if(!authorized){
//ask for username pword
}
//here, add credentials
httpConnection.setRequestHeader("Authorization", "Basic : ODI5ZGV2bDokY19kdXN0Ym93bA==");
}
httpConnection.send();
}
예, 내 config.xml에 올바른 도메인과 하위 도메인이 추가되었습니다. "IF"문이 true를 반환 할 때만 setRequestHeader 메서드를 호출합니다. 그렇지 않으면 방금 요청을 보내면 제대로 작동합니다. 아무 것도 일어나지 않는 헤더를 추가하지 않으면됩니다. – user697286
죄송합니다, 수정, 아무 것도 일어나지 않는 헤더를 추가 할 때만입니다. – user697286