Google Apps脚本中的POST方法

时间:2015-07-12 06:06:56

标签: ajax json google-apps-script http-post

在Apps脚本中使用POST方法时,我可以问一下有什么问题吗?

function myFunctionpost() {
  var url = "mydomain.com/2spreadsheet.php";
  var data = { "testpost" : " Text text text" };
   var payload = JSON.stringify(data);

 var headers = { "Accept":"application/json", 
                "contentType" : "application/json",
              "Authorization":"Basic _authcode_"
             };

 var options = { "method":"POST",
             "contentType" : "application/json",
            "headers": headers,
                "payload" : payload
           };

  var response = UrlFetchApp.fetch(url ,options);
  Logger.log(response );  
 }

Apps脚本中的 myFunctionpost() 是关于将Json数据:“testpost”发布到网址。

<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    echo "Server is requested";

    if(isset($_POST["testpost"])){
      echo "Post something here";
      echo $_POST["testpost"];
    }
}

2spreadsheet.php )中的代码显示我想发布我发布的数据,但它不起作用。

登录输出:

  

[15-07-12 14:06:00:205 HKT]

     

请求服务器

谁能告诉我这是什么问题?

1 个答案:

答案 0 :(得分:0)

您不必指定内容类型,也可以省略JSON.Stringify。您的对象数据已经是JavaScript对象。它将被解释为HTML表单。

var url = "mydomain.com/2spreadsheet.php";
var data = { "testpost" : " Text text text" };

var options = { "method":"POST",
                "payload" : data
};

var response = UrlFetchApp.fetch(url ,options);
Logger.log(response ); 

内容类型默认为application / x-www-form-urlencoded。您可以使用$ _SERVER [“CONTENT_TYPE”]进行检查。