Javascript 谷歌脚本外部API访问403s“;“利率限额”;
我一直在尝试通过谷歌脚本访问API,在一个请求后获得403的速率限制(实际上是零,因为我从未在响应中获得任何信息)。无论是否使用凭据,都会发生这种情况。当我通过cURL或浏览器访问API时,它运行良好 这是我的要求: 错误: 截断的服务器响应:{“消息”:“107.178.195.128的API速率超过了限制。(但有个好消息:经过身份验证的请求获得了更高的速率限制。请查看d…” 下面的请求显示我剩下的请求为零,这毫无意义,因为我可能只提出了五个Javascript 谷歌脚本外部API访问403s“;“利率限额”;,javascript,curl,google-apps-script,github-api,Javascript,Curl,Google Apps Script,Github Api,我一直在尝试通过谷歌脚本访问API,在一个请求后获得403的速率限制(实际上是零,因为我从未在响应中获得任何信息)。无论是否使用凭据,都会发生这种情况。当我通过cURL或浏览器访问API时,它运行良好 这是我的要求: 错误: 截断的服务器响应:{“消息”:“107.178.195.128的API速率超过了限制。(但有个好消息:经过身份验证的请求获得了更高的速率限制。请查看d…” 下面的请求显示我剩下的请求为零,这毫无意义,因为我可能只提出了五个 function myFunctionA() {
function myFunctionA() {
var url = "https://api.github.com/rate_limit";
//var url = "https://api.github.com/repos/moodle/moodle/compare/e7c8da0fb83c6bbd818fec967d...b5f3ed32a690e46fc0ad3b251";
var response = UrlFetchApp.fetch(url);
var json = response.getContentText();
var data = JSON.parse(json);
Logger.log(data);
}
日志
[16-09-19 10:13:48:745 CDT]{速率=
{限制=60,重置=1474300805,剩余=0},
资源=
{core=
{限制=60,重置=1474300805,剩余=0},
搜索=
{limit=10,reset=1474298088,remaining=10}}}你的代码和curl(+browser)请求之间的区别是useragent字符串。从你的代码中,我看不到你传递的任何用户字符串。虽然我以前没有使用过
urlfetchap
,但听起来它似乎不支持useragent字符串
这是我在没有任何useragent的情况下尝试获取链接时得到的响应
Request forbidden by administrative rules. Please make sure your request has a User-Agent header ...
您的代码和curl(+browser)请求之间的区别在于useragent字符串。从您的代码中,我看不到您正在传递的任何用户字符串。虽然我以前没有使用
UrlFetchApp
,但听起来它似乎不支持useragent字符串
这是我在没有任何useragent的情况下尝试获取链接时得到的响应
Request forbidden by administrative rules. Please make sure your request has a User-Agent header ...
请注意,您需要独占IP。由于谷歌应用程序脚本使用共享IP地址,因此您的问题仍然存在。请注意,您需要独占IP。由于谷歌应用程序脚本使用共享IP地址,因此您的问题仍然存在