PhoneGap은 twitter에서 json을 인쇄합니다. 그러나 내 ajax.open에 다른 URL을 사용하면 빈 화면이 나타납니다. 지저분한 코드 레이아웃에 대한 사과 나는 웹 서버를 만들어 내 로컬 호스트에서 이러한 요청을 코딩하고 아래 코드를 사용해, 마이너스 스크립트 태그에 phonegap.js 시작하고부터 HTML을 호출하기위한 괜찮 았는데 Eclipse를 사용XMLHttpRequest가 Twitter json에서만 작동하는 이유는 무엇입니까?
<pre>
</head>
<body>
<script type="text/javascript" src="phonegap.js"></script>
<script type="text/javascript">
function appReady(){
}
document.addEventListener("deviceready", appReady, false);
var ajax = new XMLHttpRequest();
ajax.open("GET","http://search.twitter.com/search.json?q=bacon",true);
ajax.send();
ajax.onreadystatechange=function(){
if(ajax.readyState==4 && (ajax.status==200))
{
document.getElementById('main').innerHTML = ajax.responseText;
}
}
</script>
Hello
<div id="main">
</pre>
/test2.html ". phonegap을 사용하지 않는 로컬 컴퓨터에서"phonegap.js "를 제거했습니다. XMLHttpRequest의 W3school 설명서에서 얻은이 코드가 포함 된"Test.js "로 바꾸 었습니다.
에뮬레이터에서 /Test2.html을 호출하려고 할 때 빈 화면이 표시됩니다. 또한 내 자신의 서버에서 트위터 json을 호출 할 수 없으므로 도메인 간 보호로 인한 것으로 예상됩니다. 다시 전화 걸기 작업을하지 않아서
아무에게도 내 에뮬레이터에서이 코드를 사용하여 Test2 및 다른 URL을 볼 수없는 이유를 알 수 있습니까? 도 사용할 수있는 온라인 jsons 다른 사람을 알고, 나는 구글과 야후 것들을 시도했지만 그들은 또한 중 하나를 작동하지 않는 것.
function handler() {
if(this.readyState == this.DONE) {
if(this.status == 200 && this.responseXML != null && this.responseXML.getElementById('test').textContent)
{
// success!
processData(this.responseXML.getElementById('test').textContent);
return;
}
// something went wrong
processData(null);
}
}
공백이되는 "다른 URL"은 무엇입니까? 사용하는 모든 URL에 대해 해당 URL을 브라우저에 넣고 URL이 반환 할 내용을 볼 수 있어야합니다. 공백이 반환되면 공백이 AJAX 호출로 반환됩니다. –
http://www.google.com/calendar/feeds/[email protected]/public/full?alt=json이 내가 연결하려고 시도했던 다른 json이었습니다. 브라우저에 넣으면 json을 볼 수 있지만 에뮬레이터의 화면에는 출력되지 않습니다. – user1016950