我正在构建一个使用Jquery和php执行一些Ajax请求的网页。 JQuery向php发送一个字符串,php回复了一个reposnse。这在我支付的托管内工作得很好。我想使用相同的文件为Android创建一个Html5应用程序。
我应该怎么做才能执行相同的Ajax,但现在从App(这是在手机本地)到php(托管在我的服务器中),反之亦然? 如果有帮助,我使用siteground进行托管。我想有一个良好和正确的方法来启动应用程序生产;不是解决方法。
app ajax
$(document).ready(function(){
$("button").click(function(){
$.ajax({
type: 'POST',
url: 'ajaxphp.php',
data: { sentvar: "hello" },
success: function(response) {
$("#responseecho").html(response);
}
});
});
});
php
$x = $_POST['sentvar'];
if ($x == "hello")
echo "variable received";
else
echo "variable not received";
答案 0 :(得分:0)
您可以添加标题以允许从任何来源访问PHP文件:
header("Access-Control-Allow-Origin: *");
确保它在任何输出(包括空格)之前或者它会抛出错误。
或者,您可以通过添加以下内容对.htaccess
文件进行相同的更改:
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "*"
</IfModule>
当然,您需要启用mod_headers
mod才能生效,但它将适用于受.htaccess
影响的所有文件。要将此限制为某些文件类型(例如.php
),您可以像这样修改它:
<IfModule mod_headers.c>
<FilesMatch "\.(php)$">
Header set Access-Control-Allow-Origin "*"
</FilesMatch>
</IfModule>