将混合应用程序的数据从 php 传递到 javascript
passing data from php to javascript for hybrid apps
我正在使用英特尔 xdk 构建跨平台移动应用程序,我需要从服务器上的 php 运行ning 检索数据到我的 javascript..... . 这是我的 js 代码
var meRequest;
meRequest = new XMLHttpRequest();
meRequest.onreadystatechange=function()
{
if(meRequest.readyState==4)
{
alert("request sent");
alert((meRequest.responseText));
}
}
meRequest.open("GET", "http://127.0.0.1/my_queries_1.php",true);
meRequest.send();
这是我的 php 代码:
<?php
echo json_encode(500);
exit;
?>
这在我 运行 它们都来自本地主机时有效,即两个脚本都在服务器上但我不能使用它,因为对于应用程序,js 必须嵌入到移动应用程序中,并且php 脚本保留在服务器上...但是如果我 运行 本地主机外部的 javascript 文件得到空响应文本。
请问我该怎么办??
所以你需要跨域请求,我认为这样的东西应该适合你:
// (1)
var XHR = ("onload" in new XMLHttpRequest()) ? XMLHttpRequest : XDomainRequest;
var xhr = new XHR();
// (2) cross domain request
xhr.open('GET', 'http://anywhere.com/request', true);
xhr.onload = function() {
alert( this.responseText );
}
xhr.onerror = function() {
alert( 'error ' + this.status );
}
xhr.send();
服务器端也应该通过生成特殊响应来允许此类请求headers:
HTTP/1.1 200 OK
Content-Type:text/html; charset=UTF-8
Access-Control-Allow-Origin: http://example.com
我正在使用英特尔 xdk 构建跨平台移动应用程序,我需要从服务器上的 php 运行ning 检索数据到我的 javascript..... . 这是我的 js 代码
var meRequest;
meRequest = new XMLHttpRequest();
meRequest.onreadystatechange=function()
{
if(meRequest.readyState==4)
{
alert("request sent");
alert((meRequest.responseText));
}
}
meRequest.open("GET", "http://127.0.0.1/my_queries_1.php",true);
meRequest.send();
这是我的 php 代码:
<?php
echo json_encode(500);
exit;
?>
这在我 运行 它们都来自本地主机时有效,即两个脚本都在服务器上但我不能使用它,因为对于应用程序,js 必须嵌入到移动应用程序中,并且php 脚本保留在服务器上...但是如果我 运行 本地主机外部的 javascript 文件得到空响应文本。 请问我该怎么办??
所以你需要跨域请求,我认为这样的东西应该适合你:
// (1)
var XHR = ("onload" in new XMLHttpRequest()) ? XMLHttpRequest : XDomainRequest;
var xhr = new XHR();
// (2) cross domain request
xhr.open('GET', 'http://anywhere.com/request', true);
xhr.onload = function() {
alert( this.responseText );
}
xhr.onerror = function() {
alert( 'error ' + this.status );
}
xhr.send();
服务器端也应该通过生成特殊响应来允许此类请求headers:
HTTP/1.1 200 OK
Content-Type:text/html; charset=UTF-8
Access-Control-Allow-Origin: http://example.com