通过 Google Script FetchUrlApp() 休息 API cURL POST

Rest API cURL POST via Google Script FetchUrlApp()

我正在尝试 cURL post 通过 Google 脚本解析平台。尝试了不同的组合,但总是从服务器得到响应 400。有谁知道代码中的问题出在哪里?提前谢谢大家!

function myFunction() {
  var payload = JSON.stringify({
    "score": 1337,
    "playerName": 'Sean Plott',
    "cheatMode": false
});

var headers = {
    "X-Parse-Application-Id": 'myid',
    "X-Parse-Master-Key": 'mykey',
    "X-Parse-Url": 'https://parseapi.back4app.com/',
};

var options = {
    'method': 'post',
    'payload': payload,
    'Content-Type': 'application/json',
    //muteHttpExceptions : true,
    'headers': headers
};
var test = UrlFetchApp.fetch('https://parseapi.back4app.com/classes/GameScore', options);
Logger.log(test);

看来您正在正确使用 UrlFetchApp.fetch() API。

注意400错误意味着

The server cannot or will not process the request due to something that is perceived to be a client error (e.g., malformed request syntax, invalid request message framing, or deceptive request routing).

HTTP Statuses

换句话说,您的请求可能格式不正确。一个可能的原因是您使用了不正确的 header 或没有为您的请求提供足够的信息。

我没有使用 Parse 平台的经验,但它看起来需要一个基于 this documentation.

X-Parse-REST-API-Key header

在您的选项对象中将 Content-Type 替换为 contentType