使用Javascript访问PHP JSON响应
这是一种有效的方法:我不想通过源代码访问api键,所以我一直试图用PHP隐藏它,并使用Javascript显示数据。(我更喜欢使用js语法来显示数据)我已经能够成功地显示数据,但是当我查看源代码时,我可以看到JSON响应。有人能告诉我这是否是一种有效的方法,为什么在源代码中显示json不是一个好主意使用Javascript访问PHP JSON响应,javascript,php,json,Javascript,Php,Json,这是一种有效的方法:我不想通过源代码访问api键,所以我一直试图用PHP隐藏它,并使用Javascript显示数据。(我更喜欢使用js语法来显示数据)我已经能够成功地显示数据,但是当我查看源代码时,我可以看到JSON响应。有人能告诉我这是否是一种有效的方法,为什么在源代码中显示json不是一个好主意 <?php $apikey = "xxxx"; $data = file_get_contents('http://url?apikey=' . $apikey); $json = json_
<?php
$apikey = "xxxx";
$data = file_get_contents('http://url?apikey=' . $apikey);
$json = json_decode($data,true);
?>
然后我访问响应,如下所示:
<script type="text/javascript">
var data = <?php echo json_encode($json) ?>;
$('.in-theaters-soon').append('<p>' + data.movies[0].title + '</p>');
</script>
var数据=;
$('.in theaters soon').append(''+data.movies[0].title+'');
您可以直接回显PHP中的值,因为您已经在$json
中得到了响应。例如:
<div class="in-theaters-soon">
<p><?php echo $json['movies'][0]['title']; ?></p>
</div>
您可以直接回显PHP中的值,因为您已经在$json
中得到了响应。例如:
<div class="in-theaters-soon">
<p><?php echo $json['movies'][0]['title']; ?></p>
</div>
始终对打印的数据进行一些验证
<?php
$apikey = "xxxx";
$data = file_get_contents('http://url?apikey=' . $apikey);
if (is_array($data) && ! empty($data)) {
/**
* Do something.
/**/
}
始终对打印的数据进行一些验证
<?php
$apikey = "xxxx";
$data = file_get_contents('http://url?apikey=' . $apikey);
if (is_array($data) && ! empty($data)) {
/**
* Do something.
/**/
}
如果将php保存在单独的文件中,则可以执行类似操作
你的php文件
<?php
// create a token check to make sure it is being called.
$apikey = "xxxx";
$data = file_get_contents('http://url?apikey=' . $apikey);
echo json_encode($data);
?>
然后通过发送令牌或类似的东西来查询php文件
$.ajax({
url: url,
type: 'POST',
data: {token:token},
success: function(data){
var response = $.parseJSON(data);
for(var x = 0; x < response.length; x++){
$('.in-theaters-soon').append('<p>' + response[x].title + '</p>');
}
},
cache: false,
contentType: false,
processData: false
});
$.ajax({
url:url,
键入:“POST”,
数据:{token:token},
成功:功能(数据){
var响应=$.parseJSON(数据);
对于(var x=0;x');
}
},
cache:false,
contentType:false,
processData:false
});
希望这能有所帮助。如果将php放在一个单独的文件中,您可以这样做
你的php文件
<?php
// create a token check to make sure it is being called.
$apikey = "xxxx";
$data = file_get_contents('http://url?apikey=' . $apikey);
echo json_encode($data);
?>
然后通过发送令牌或类似的东西来查询php文件
$.ajax({
url: url,
type: 'POST',
data: {token:token},
success: function(data){
var response = $.parseJSON(data);
for(var x = 0; x < response.length; x++){
$('.in-theaters-soon').append('<p>' + response[x].title + '</p>');
}
},
cache: false,
contentType: false,
processData: false
});
$.ajax({
url:url,
键入:“POST”,
数据:{token:token},
成功:功能(数据){
var响应=$.parseJSON(数据);
对于(var x=0;x');
}
},
cache:false,
contentType:false,
processData:false
});
希望这能有所帮助。Hi littleibex,我更喜欢使用javascript来显示数据,因为我更熟悉它的语法。你认为上述方法有效吗?您认为JSON可以在源代码中查看吗?您的方法是有效的,因为它可以完成工作,尽管这是一种非常迂回的方式。在源代码中查看JSON不会造成任何伤害,因为您正在以一种非常漂亮的方式(使用HTML)向用户显示JSON。此外,由于它只是JSON,因此无法回溯JSON的来源和方式。嗨,littleibex,我更喜欢使用javascript显示数据,因为我更熟悉它的语法。你认为上述方法有效吗?您认为JSON可以在源代码中查看吗?您的方法是有效的,因为它可以完成工作,尽管这是一种非常迂回的方式。在源代码中查看JSON不会造成任何伤害,因为您正在以一种非常漂亮的方式(使用HTML)向用户显示JSON。此外,由于它只是JSON,因此无法回溯JSON的来源和方式。