Google脚本不与PHP API交互

时间:2019-01-14 11:35:00

标签: php google-apps-script

我正在尝试使用Google Apps脚本将Google表格连接到PHP脚本。这需要使用UrlFetchApp函数发送有效载荷。而且,这就是Script和PHP之间的连接出错的地方。

该连接有效,当我将PHP脚本中的echo值替换为一个非变量时,会有响应。另外,我的响应代码为200。 但是,发送或读取我的有效载荷是个问题。

Google Apps脚本:

var payload = {"A": "12345"};
var url = 'myurl/stats.php'
var response = UrlFetchApp.fetch(
        url,
        {
          "method": "GET",
          "contentType": "application/json",
          "payload": JSON.stringify(payload),
        }
      );
var responseCode = response.getResponseCode();
var responseBody = response.getContentText();

Logger.log(responseCode);
Logger.log(responseBody); 

PHP:

<?php 
$A = $_GET["A"];
echo json_encode("Hello: ".$A);
?>

注意:使用浏览器,此PHP脚本正在运行。

我希望responseBody"Hello: 12345",但实际输出是"Hello: "

1 个答案:

答案 0 :(得分:2)

简单地修改您的php代码以发送响应

var payload = {"A": "12345"};
var url = 'myurl/stats.php?A=' + payload.A;
var response = UrlFetchApp.fetch(
        url,
        {
          "method": "GET",
          "contentType": "application/json",
          "payload": JSON.stringify(payload),
        }
      );
var responseCode = response.getResponseCode();
var responseBody = response.getContentText();

Logger.log(responseCode);
Logger.log(responseBody); 


<?php 
$A = $_GET["A"];
echo json_encode(["Hello" => $A]);
// echo json_encode("Hello: ".$A);
?>