通过 google 脚本使用正确的 login/pass 拒绝 403 访问网站
403 access denied to the website with proper login/pass through google script
var url = "https://web-site_name/page/?format=json&var_data-organization_dates&xlsexport=true";
var payload =
{
"login" : "login",
"password" : "pass",
};
var options =
{
"method" : "post",
"payload" : payload,
"followRedirects" : false
};
var login = UrlFetchApp.fetch("https://web-site_name/page/" , options);
var sessionDetails = login.getAllHeaders()['Set-Cookie'];
Logger.log(login.getAllHeaders());
这是我尝试使用的部分代码,用于自动从网站导出数据,我确实有正确的登录名和密码,并且能够在 json 中下载文件(在 xsl 中打开) 手动,我在开发人员工具中获得了网络中下载文件的地址,但我在第一阶段遇到了问题 - 当尝试授权网站时 - 访问被拒绝。我已经尝试了代码,在 Whosebug 的答案中给出,但它仍然不起作用。
如何正确发出 url 提取请求,取决于您要访问的网站和他们使用的身份验证
在最简单的情况下,您的网站需要 HTTP 基本身份验证,在这种情况下正确的语法是
var authHeader = 'Basic ' + Utilities.base64Encode(login + ':' + pass);
var options = {
headers: {Authorization: authHeader}
}
如果您的网站使用不同的身份验证表单,您可能需要提供访问令牌。
无论如何:身份验证凭据进入 headers
,而不是进入 payload
!
payload
是你要post=上传到网站的数据。
如果你想从网站导出数据——即下载数据——你不需要payload
,正确的方法是get
,而不是[=16] =].顺便说一句,如果方法是 get
,则不需要指定它。
有关更多信息和示例,请参阅 here。
var url = "https://web-site_name/page/?format=json&var_data-organization_dates&xlsexport=true";
var payload =
{
"login" : "login",
"password" : "pass",
};
var options =
{
"method" : "post",
"payload" : payload,
"followRedirects" : false
};
var login = UrlFetchApp.fetch("https://web-site_name/page/" , options);
var sessionDetails = login.getAllHeaders()['Set-Cookie'];
Logger.log(login.getAllHeaders());
这是我尝试使用的部分代码,用于自动从网站导出数据,我确实有正确的登录名和密码,并且能够在 json 中下载文件(在 xsl 中打开) 手动,我在开发人员工具中获得了网络中下载文件的地址,但我在第一阶段遇到了问题 - 当尝试授权网站时 - 访问被拒绝。我已经尝试了代码,在 Whosebug 的答案中给出,但它仍然不起作用。
如何正确发出 url 提取请求,取决于您要访问的网站和他们使用的身份验证
在最简单的情况下,您的网站需要 HTTP 基本身份验证,在这种情况下正确的语法是
var authHeader = 'Basic ' + Utilities.base64Encode(login + ':' + pass);
var options = {
headers: {Authorization: authHeader}
}
如果您的网站使用不同的身份验证表单,您可能需要提供访问令牌。
无论如何:身份验证凭据进入
headers
,而不是进入payload
!payload
是你要post=上传到网站的数据。如果你想从网站导出数据——即下载数据——你不需要
payload
,正确的方法是get
,而不是[=16] =].顺便说一句,如果方法是get
,则不需要指定它。
有关更多信息和示例,请参阅 here。