0
我需要实现一个用于在网站上登录的谷歌脚本应用程序,然后如果身份验证过程在该网站上成功,用户应该在Google脚本边栏中收到一条消息。Google脚本在外部网站上进行身份验证
例如:用户输入他的电子邮件和密码,然后他按下登录按钮,然后他应该在网站上登录,如果凭据是正确的。
让我知道如果我需要提供更多细节......我是新的谷歌应用脚本,我真的需要一些帮助,这个登录过程。谢谢!
我试图执行下面的代码,但在执行login
功能时,我收到以下错误信息:Request failed for https://example.com/login returned code 405.
HTML文件:
<div class="form-auth">
<label class="inline">username</label>
<input type="text" placeholder="Insert Email"/>
</div>
<div class="form-auth">
<label class="inline">password</label>
<input placeholder="Insert Password"/>
</div>
<button class="btn-default">Login</button>
谷歌的脚本文件:
function onOpen() {
SpreadsheetApp.getUi() // Or DocumentApp or FormApp.
.createMenu('Menu')
.addItem('Show sidebar', 'showSidebar')
.addToUi();
}
function showSidebar() {
var html = HtmlService.createHtmlOutputFromFile('login')
.setSandboxMode(HtmlService.SandboxMode.IFRAME)
.setTitle('SDR Tag Governance')
.setWidth(300);
SpreadsheetApp.getUi() // Or DocumentApp or FormApp.
.showSidebar(html);
}
function login() {
var payload =
{
"username" : "[email protected]",
"password" : "myPassword",
};
var options =
{
"method" : "post",
"payload" : payload,
"followRedirects" : false
};
var login = UrlFetchApp.fetch("https://example.com/login" , options);
var sessionDetails = login.getAllHeaders()['Set-Cookie'];
}
状态405意味着方法不允许,也许你的网址不需要你发送它。您是否尝试使用ajax从浏览器进行相同的登录调用?从浏览器控制台执行操作时,请确保您位于相同的域名,即example.com,除非您禁用了CORS。 – MShoaib91
我设法通过添加'headers'选项来解决这个问题。 – Valip