API 请求 Google Apps 脚本

发布于 2025-01-11 19:43:51 字数 643 浏览 0 评论 0原文

我需要从 api 请求信息。我尝试使用 UrlFetchApp.fetch 和 fetchAll 发出请求。在这两种情况下我什么也没得到。这是我的代码:(

  var request1 = {
   url: "https://seo-fast-audit.p.rapidapi.com/?url=" + url,
   method : 'GET',
   params: {url: 'https://docteurseo.fr/'}, 
   headers: {
         "x-rapidapi-host": "seo-fast-audit.p.rapidapi.com",
         "x-rapidapi-key": "KEY"
            }
};
let response = UrlFetchApp.fetchAll([request1])

这里我替换了密钥)

那么我的问题是什么?是异步中的问题吗功能还是我的要求不正确?

这是我正在使用的 API https://rapidapi.com/DocteurSEO/api/seo-fast-audit

I need to request information from api.I tried to make a request with UrlFetchApp.fetch and fetchAll.In both cases i got nothing.Here s my code:

  var request1 = {
   url: "https://seo-fast-audit.p.rapidapi.com/?url=" + url,
   method : 'GET',
   params: {url: 'https://docteurseo.fr/'}, 
   headers: {
         "x-rapidapi-host": "seo-fast-audit.p.rapidapi.com",
         "x-rapidapi-key": "KEY"
            }
};
let response = UrlFetchApp.fetchAll([request1])

(here i replaced key)

So what is my problem?Is that problem in async functions or am i requesting not correctly?

Here s API i am using
https://rapidapi.com/DocteurSEO/api/seo-fast-audit

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

无法回应 2025-01-18 19:43:51

如果您想将以下 javascript 转换为 Google Apps 脚本,Ref

var axios = require("axios").default;

var options = {
  method: 'GET',
  url: 'https://seo-fast-audit.p.rapidapi.com/',
  params: {url: 'https://docteurseo.fr/'},
  headers: {
    'x-rapidapi-host': 'seo-fast-audit.p.rapidapi.com',
    'x-rapidapi-key': 'SIGN-UP-FOR-KEY'
  }
};

axios.request(options).then(function (response) {
    console.log(response.data);
}).catch(function (error) {
    console.error(error);
});

怎么样以下修改?

function myFunction() {
  var url = "https://seo-fast-audit.p.rapidapi.com?url=" + encodeURIComponent('https://docteurseo.fr/');
  var option = {
    headers: {
      "x-rapidapi-host": "seo-fast-audit.p.rapidapi.com",
      "x-rapidapi-key": "KEY"
    }
  };
  let response = UrlFetchApp.fetch(url, option);
  console.log(response.getContentText())
}
  • 在您的脚本中,params 未包含在 fetchfetchAll 的对象中。而且,我认为在您的情况下,需要 url 进行 URL 编码,而 com/?url=com?url=

注意:

  • 我认为上面Google Apps Script的请求与Javascript的顶部相同。但如果出现错误,请再次检查您的KEY

  • 如果发生403禁止错误,则可能无法从Google端访问该网站。我很担心这个。

参考:

If you want to convert the following javascript to Google Apps Script, Ref

var axios = require("axios").default;

var options = {
  method: 'GET',
  url: 'https://seo-fast-audit.p.rapidapi.com/',
  params: {url: 'https://docteurseo.fr/'},
  headers: {
    'x-rapidapi-host': 'seo-fast-audit.p.rapidapi.com',
    'x-rapidapi-key': 'SIGN-UP-FOR-KEY'
  }
};

axios.request(options).then(function (response) {
    console.log(response.data);
}).catch(function (error) {
    console.error(error);
});

how about the following modification?

function myFunction() {
  var url = "https://seo-fast-audit.p.rapidapi.com?url=" + encodeURIComponent('https://docteurseo.fr/');
  var option = {
    headers: {
      "x-rapidapi-host": "seo-fast-audit.p.rapidapi.com",
      "x-rapidapi-key": "KEY"
    }
  };
  let response = UrlFetchApp.fetch(url, option);
  console.log(response.getContentText())
}
  • In your script, params is not included in the object for fetch and fetchAll. And, I thought that in your situation, url is required to do the URL encode, and com/?url= is com?url=.

Note:

  • I think that the request of the above Google Apps Script is the same as the top of Javascript. But if an error occurs, please check your KEY again.

  • If an error of 403 forbidden occurs, the site might not be accessed from the Google side. I'm worried about this.

Reference:

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文