UrlFetchApp Post 变量没有被 php 服务器发送/接收

Posted

技术标签:

【中文标题】UrlFetchApp Post 变量没有被 php 服务器发送/接收【英文标题】:UrlFetchApp Post Variables Not being sent/received by php server 【发布时间】:2018-02-22 04:42:20 【问题描述】:
 var headers =  
            "Accept": "application/json", 
            "Content-Type": "application/json"
        ;

 var data =  
            action: "test123"
        ; 

      var options =  "method":"POST",
            "headers" : headers,
            "followRedirects": false, 
            "validateHttpsCertificates": false, 
            "muteHttpExceptions" : true,
            "contentType": "application/json",
            "payload": JSON.stringify(data)
           ;

var requestURL = "http://requesturl.com/controller.php";

var response =   UrlFetchApp.fetch(requestURL, options);

      Logger.log(response.getContentText());

在controller.php中的php服务器上

<?php

echo ($_POST['action']);

?>

我没有得到任何回声,但我确实收到了 200 响应代码,任何帮助将不胜感激!!!!!!!!!

【问题讨论】:

【参考方案1】:

你尝试代码会得到什么结果:

var data =  
        'action': 'test123'
    ; 

  var options =  "method":"POST",
        "headers" : headers,
        "followRedirects": false, 
        "validateHttpsCertificates": false, 
        "muteHttpExceptions" : true,
        "contentType": "application/json",
        "payload": data
       ;

【讨论】:

action post var 没有填充,它是空的,你认为它可能必须按照 Godaddy 上的 apache 服务器配置方式进行吗?你得到了什么? 我也认为你忘记了 JSON.stringify 数据函数? @papelerto 配置可能不是问题。 您认为可能是什么问题?我完全按照 adwords 脚本示例中的示例进行操作,您认为我的服务器以不同方式读取和响应 http 标头吗? 从字面上看,我在上面发布的内容甚至不适用于我发布的最小案例,你能收到帖子参数吗?代码对你有用吗?

以上是关于UrlFetchApp Post 变量没有被 php 服务器发送/接收的主要内容,如果未能解决你的问题,请参考以下文章

UrlFetchApp Google Scripts VS Node Fetch

php$_POST 变量

在 Gmail 插件中使用 UrlFetchApp 的权限错误

UrlFetchApp.fetch 具有非常长的 URL

POST 变量永远不会被设置

Google 应用程序脚本:urlfetchapp - 服务调用次数过多