Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在Gmail中获取线程id_Javascript_Multithreading_Email_Gmail - Fatal编程技术网

Javascript 在Gmail中获取线程id

Javascript 在Gmail中获取线程id,javascript,multithreading,email,gmail,Javascript,Multithreading,Email,Gmail,我正在寻找一种方法,找出如何在Gmail上获取特定电子邮件的线程id,就在发送之前或在单击发送按钮时 目前,我正在使用Javascript,以便从电子邮件中删除其他项目,并将它们存储在一个记录中,该记录对除线程id之外的所有内容都非常有效 在URL内发送电子邮件后,可以找到线程ID: https://mail.google.com/mail/u/0/?shva=1#inbox/13ddda647539dcca 在本例中,线程id(如果我是对的话)是13ddda647539dcca 任何帮助都将

我正在寻找一种方法,找出如何在Gmail上获取特定电子邮件的线程id,就在发送之前或在单击发送按钮时

目前,我正在使用Javascript,以便从电子邮件中删除其他项目,并将它们存储在一个记录中,该记录对除线程id之外的所有内容都非常有效

在URL内发送电子邮件后,可以找到线程ID:

https://mail.google.com/mail/u/0/?shva=1#inbox/13ddda647539dcca
在本例中,线程id(如果我是对的话)是13ddda647539dcca

任何帮助都将不胜感激。

您可以尝试:

var matched = window.location.hash.match(/[A-Za-z0-9]+$/);
if (matched) {
    // Found alphanumeric string at end of hash
}
您可以通过
匹配[0]
获得值

window.location.hash
应该只抓取“#inbox/13ddda647539dcca”部分。然后正则表达式将匹配字符串末尾的任何字母数字字符。因此,“inbox”与线程id之间用“/”分隔这一事实很重要


当然,所有这一切都取决于Gmail的可靠性,使URL保持与当前相同的惯例。

如果有人仍然感兴趣,您可以在发送电子邮件后通过观察页面顶部显示的链接来检索线程id。此范围包含一个名为“param'具有线程id。

感谢您的回复。如果我只是从URL中获取它,这将起作用,但我正在尝试在发送电子邮件之前获取此id,或者在单击“发送”按钮时获取此id。其主要目的是让我在发送电子邮件后直接访问此电子邮件。@HappyCry我理解您的意思,但我“我有点困惑。这是用于新电子邮件还是用于回复线程?当回复线程时,它应该在您回复时的URL中可用,因此我的方法应该有效。如果是用于新电子邮件,我不确定您想要的是什么(除非在撰写过程中已保存电子邮件)。似乎在您撰写时,URL已经存在“#撰写"最后。只有在您发送/保存电子邮件后,URL才会更改为具有线程ID。我认为在您最终发送之前不会创建ID,因为该ID是在服务器上创建的。我认为您是对的。此方法适合在回复框中使用。由于该ID是在服务器上创建的,您是否会想到其他唯一标识符我可以在发送时附上电子邮件?谢谢你的帮助,非常感谢。@HappyCry-Hmm我想不出任何东西。我的意思是,我不知道Gmail的内部结构,但按照新事物的正常工作方式,唯一标识符是在创建后设置的,以前没有标识。就像我说的,如果电子邮件在Comp期间保存ose,URL会发生变化,你可以通过这种方式获取线程ID。但我确信,在发送电子邮件之前,你可能会发现一些关于电子邮件的“独特”信息。我试图扫描HTML,但我找不到任何信息(如隐藏元素),但这可能是谷歌团队的一个问题