调用$.getJSON并发送URL参数

call a $.getJSON and sending URL parameter

本文关键字:URL 参数 并发 getJSON 调用      更新时间:2023-09-26

我有一个带有以下URL的页面test.php?city=Paris,我有一个php脚本(getData.php),它执行一个SQL请求并返回一个JSON对象。为了执行我的请求,我需要URL中的参数city。我这样调用getData.php脚本:

var ville = "<?php echo $_GET['ville']?>";
$.getJSON("bat/getData.php", {ville: ville}, function( data ) {
    console.log(data);
});

我不认为这是将URL参数发送到php脚本的最佳方式。你觉得怎么样?

您不应该将任意数据回显到脚本中。您已经暴露了跨站点脚本攻击。

您可以通过对数据进行JSON编码来解决这个问题,JSON与JavaScript兼容。

var ville = <?php echo json_encode($_GET['ville']); ?>;

将参数作为查询字符串的一部分进行传递没有错。

但是实现一点REST服务可能更优雅。根据您当前的实现,REST服务将提供以下资源:

GET /cities/{cityname}

示例:

GET /cities/paris