我正在为我的Django支持的网站制作镀铬扩展程序(带链接提交功能)。我正在使用django-tastypie发布JavaScript链接。但是,我无法弄清楚如何从JavaScript访问django会话以确定链接的提交者。使用console.log(document.cookie)
听起来不太可能,因为document.cookie显然会从当前页面访问cookie,而不是来自我的django驱动的网站的cookie。任何帮助,将不胜感激。
答案 0 :(得分:0)
据我所知,有两种方法可以做到这一点。
在Django应用服务器端实施oAuth,并使用Javascript oAuth method对用户进行身份验证。如果您还没有提供oAuth,这可能对您有很多帮助,所以这可能是一个坏主意。
将iframe与您网站上的网页一起使用。将内容脚本注入iframe并从中提取数据。您可能必须设置特定端点。
{
...,
"content_scripts": [
{
"matches": ["http://yoursite.com/api/extension"],
"js": ["content_script.js"],
"all_frames": true
}
],
...
}
由另一个内容脚本加载到iframe中的端点可能如下所示:
...
<div id="user_info">joe_user</div>
...
然后您的脚本会提取#user_info div的textContent
并将其发送到后台页面供您使用:
var elem = document.querySelector('#user_info');
chrome.extension.sendMessage({
text: elem.textContent
});
有关消息传递的更多信息,请参阅Google的Message Passing documentation。
如果您需要的只是用户信息,我认为这应该适合您。我不会发送任何这样的敏感信息。