使用Google API的Chrome扩展程序中的PUT请求未呈现

时间:2019-04-10 12:07:47

标签: google-chrome google-chrome-extension google-sheets-api

我现在停留在代码中,其中我已经使用PUT请求成功调用了Sheets API,但它并未在Google Sheet中呈现。

这是我的代码,在这里我同时使用PUT和GET请求来查看数据是否已更改:

background.js

chrome.identity.getAuthToken({ 'interactive': true }, getToken);

function getToken(token) {

console.log('this is the token: ', token);

  var params = {
    "range":"Sheet1!A1:B1",
    "majorDimension": "ROWS",
      "values": [
      ["Hi","Crush"]
    ],
  }
  let init = {
    method: 'PUT',
    async: true,
    data: params,
    headers: {
      Authorization: 'Bearer ' + token,
      'Content-Type': 'application/json'
    },
    'contentType': 'json',
  };
  fetch(
      "https://sheets.googleapis.com/v4/spreadsheets/1efS6aMlPFqHJJdG8tQw-BNlv9WbA21jQlufsgtMsUmw/values/Sheet1!A1:B1?valueInputOption=USER_ENTERED",
      init)
      .then((response) => console.log(response))

      let request = {
        method: 'GET',
        async: true,
        headers: {
          Authorization: 'Bearer ' + token,
          'Content-Type': 'application/json'
        },
        'contentType': 'json',
      };
      fetch(
          "https://sheets.googleapis.com/v4/spreadsheets/1efS6aMlPFqHJJdG8tQw-BNlv9WbA21jQlufsgtMsUmw/values/Sheet1!A1:B1",
          request)
          .then((response) => response.json())
          .then(function(data) {
            console.log(data)
          });
}

这是我的Google表格的屏幕截图,数据未更改。 PUT请求的状态为200,看来数据仍然是A1:B1中的 Hello World

enter image description here

这是日志:

enter image description here

您知道这里缺少什么吗?

1 个答案:

答案 0 :(得分:1)

此修改如何?请如下修改init的对象。

发件人:

data: params,

收件人:

body: JSON.stringify(params),

参考: