使用javascript注销Github

使用javascript注销Github,javascript,authentication,github,google-chrome-extension,Javascript,Authentication,Github,Google Chrome Extension,我正在开发一个chrome扩展,它将始终有一个当前用户登录到GitHub。为了切换用户,我希望在扩展中有一个注销按钮,用于注销当前用户 我已经试过了 chrome.windows.create({'url':'https://github.com/logout'}) 这会将我带到GitHub注销页面,但仍然有一个确认,即用户必须单击才能成功注销。我希望能够在后台或至少注销用户,而不必单击其他确认 有什么想法吗?您可以检查这里提到的两种技术中的一种是否适合您: :重写window.confirm

我正在开发一个chrome扩展,它将始终有一个当前用户登录到GitHub。为了切换用户,我希望在扩展中有一个注销按钮,用于注销当前用户

我已经试过了

chrome.windows.create({'url':'https://github.com/logout'})
这会将我带到GitHub注销页面,但仍然有一个确认,即用户必须单击才能成功注销。我希望能够在后台或至少注销用户,而不必单击其他确认


有什么想法吗?

您可以检查这里提到的两种技术中的一种是否适合您:

:重写window.confirm函数 :在浏览器标题顶部插入虚拟函数showConfirm。覆盖/抑制原始函数showConfirm的文档。
即使Github确认页面中的方法名称不同,想法仍然是:如果您可以以某种方式覆盖/关闭确认方法,您可以跳过该步骤。

您可以检查此处提到的两种技术中的一种是否适用于您:

:重写window.confirm函数 :在浏览器标题顶部插入虚拟函数showConfirm。覆盖/抑制原始函数showConfirm的文档。 即使Github确认页面中的方法名称不同,想法仍然是:如果您可以以某种方式覆盖/关闭确认方法,您可以跳过该步骤。

有效解决方案

当我从外部页面调用时,它显示了一个带有提交/确认按钮的表单以注销。表单没有id或类,但我使用

 document.getElementsByTagName('form')[1].submit();
当然,这并不理想,因为如果github更改其注销页面的布局,它将中断。此外,在加载页面和提交表单之间存在延迟,这对用户不是很友好。如果我找到更好的解决方案,我将在此处更新

当我从外部页面调用时,它显示了一个带有提交/确认按钮的表单以注销。表单没有id或类,但我使用

 document.getElementsByTagName('form')[1].submit();

当然,这并不理想,因为如果github更改其注销页面的布局,它将中断。此外,在加载页面和提交表单之间存在延迟,这对用户不是很友好。如果我找到更好的解决方案,我会在这里更新

谢谢你的回答。我应该说得更清楚些。这不是一个确认对话框。它是页面上的一个表单,带有确认按钮,当您从外部页面导航到时会显示该按钮。我想我需要找到一种在窗口加载时提交表单的方法。我尝试使用XMLHttpRequest发布到页面,但GitHub返回422个不可访问的实体错误您的链接与我的错误无关,但它们引导我走上了正确的道路。谢谢我投了赞成票,谢谢你的回答。我应该说得更清楚些。这不是一个确认对话框。它是页面上的一个表单,带有确认按钮,当您从外部页面导航到时会显示该按钮。我想我需要找到一种在窗口加载时提交表单的方法。我尝试使用XMLHttpRequest发布到页面,但GitHub返回422个不可访问的实体错误您的链接与我的错误无关,但它们引导我走上了正确的道路。谢谢投票支持帮助。优秀的反馈+&,比我的答案更准确。别忘了你可以接受自己的答案。谢谢。我接受了。我仍然希望看到一种不打开新窗口的方式,但是…极好的反馈+&,比我的答案更准确。别忘了你可以接受自己的答案。谢谢。我接受了。我仍然希望看到一条不打开新窗口的路。。。