0

我是 Google API (Calendar V3) 的新手,我通过获取工作令牌获得了授权。我正在使用获取请求来获取用户 calendar_Id,我想在其中发送 POST 请求,以便将事件添加到日历中。

这是我正在使用的内容:

        var json_body = {
           "end": {
             "date": "2013-09-06"
           },
           "start": {
           "date": "2013-09-06"
           },
           "summary": "test event 1"
        };

        var json_string = JSON.stringify(json_body);
        http.setRequestHeader("Content-Type", "application/json");
        http.setRequestHeader("Authorization","Bearer " + access_key);
        http.setRequestHeader("Connection", "close");

        http.onreadystatechange = function() {//Call a function when the state changes.
                if(http.readyState == 4 && http.status == 200) {
                        alert("in here");
                        alert(http.responseText);
                }
        }
        http.send(json_string);

我得到的回应是:

{
  "error": {
  "errors": [
{
   "domain": "global",
    "reason": "parseError",
   "message": "Parse Error"
}
],
"code": 400,
"message": "Parse Error"
}
}

我知道 access_key 授权标头是正确的,因为它没有给我授权错误。我在 Googles API Explorer 工具中运行了这个 JSON 结构,它正确地向我的日历添加了一个元素。我假设我构建 JSON 的方式不正确。有任何想法吗?

先感谢您。

编辑:

我找到了正确的解决方案。我在 url 请求中误用了一个参数。上面的代码可以工作,以防将来有人偶然发现它以供参考。

4

0 回答 0