Django 기반 사이트에 대한 크롬 확장 기능 (링크 제출 기능 포함)을 만들고 있습니다. JavaScript에서 링크를 게시하려면 django-tastypie을 사용하고 있습니다. 그러나 링크 제출자를 결정하기 위해 JavaScript에서 장고 세션에 액세스하는 방법을 알 수 없습니다. console.log(document.cookie)
을 사용하면 document.cookie가 당장 장고가 제공되는 웹 사이트의 쿠키가 아니라 현재 페이지의 쿠키에 액세스하는 것처럼 가능성이 있다고 생각하지 않습니다. 어떤 도움을 주시면 감사하겠습니다.JavaScript에서 Django에 로그인 한 사용자 정보에 액세스하는 방법은 무엇입니까?
0
A
답변
0
내가 할 수있는 한이 작업을 수행하는 데는 두 가지 방법이 있습니다.
장고 애플 리케이션 서버 측에서 OAuth를 구현하고 사용자를 인증하는 Javascript oAuth method를 사용합니다. 이것은 oAuth를 아직 제공하지 않았다면 아마도 많은 일을 할 것입니다. 따라서 나쁜 생각 일 수 있습니다.
사이트의 페이지에 iframe을 사용하십시오. 콘텐츠 스크립트를 iframe에 삽입하고 데이터를 가져옵니다. 특정 엔드 포인트를 설정해야 할 수도 있습니다.
{ ..., "content_scripts": [ { "matches": ["http://yoursite.com/api/extension"], "js": ["content_script.js"], "all_frames": true } ], ... }
엔드 포인트가 다른 콘텐츠 스크립트가 iframe에로드, 다음과 같이 보일 수 있습니다하십시오 match pattern 사용하여 manifest에서
...
<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을 참조하십시오.
사용자 정보가 모두 필요한 경우 사용자에게 도움이 될 것이라고 생각합니다. 이러한 민감한 정보는 보내지 않을 것입니다.
관련 문제
- 1. Django에 로그인 한 후 로그인 페이지에 액세스하지 못하게하는 방법은 무엇입니까?
- 2. django에 로그인 한 후 브라우저 유형을 감지합니다.
- 3. PayPal의 API를 통합하고 사용자 정보에 iPhone 앱에 액세스하는 방법은 무엇입니까?
- 4. java로 바이오스 정보에 액세스하는 방법은 무엇입니까?
- 5. django에 로그인 한 사용자 그룹 표시 admin change_form.html?
- 6. 포인터 벡터의 정보에 액세스하는 방법
- 7. facebook 응용 프로그램에서 사용자 정보에 액세스하는 방법
- 8. Java에서 Javascript에서 html로 메소드에 액세스하는 방법은 무엇입니까?
- 9. javascript에서 이름을 기준으로 요소에 액세스하는 방법은 무엇입니까?
- 10. 쿼리 문자열 정보에 대한 사용자 로그인
- 11. 활동 정보에 액세스하는 방법
- 12. Perfmon 정보에 액세스하는 방법?
- 13. JavaScript에서 Linux 진단 정보에 액세스
- 14. matplotlib.backends.backend_qt4agg.NavigationToolbar2QTAgg가 알고있는 정보에 액세스하는 방법
- 15. Classloaders/App Linearalloc 클래스 정보에 액세스하는 방법은 무엇입니까?
- 16. Javascript에서 변수를 사용하여 객체 정보에 액세스하고 있습니까?
- 17. 설치 중에 입력 한 정보에 액세스하는 방법은 무엇입니까? (VS2008 설치 프로젝트)
- 18. QMetaCallEvent 란 무엇이며 세부 정보에 액세스하는 방법은 무엇입니까?
- 19. Objective C에서 서버 인증서 정보에 액세스하는 방법은 무엇입니까?
- 20. JpCap 패킷의 패킷 정보에 액세스하는 방법
- 21. 정보에 액세스하는 jQuery 플러그인 방법?
- 22. Asp.Net의 어셈블리 정보에 액세스하는 방법
- 23. MP3 태그 정보에 액세스하는 방법
- 24. Django에 내장 된 로그인 템플릿이 있습니까?
- 25. 셀 컨텐츠보기 단추를 클릭 한 후 셀 정보에 액세스하는 방법은 무엇입니까?
- 26. 로그인 한 사용자 확인
- 27. 로그인 한 사용자 감사
- 28. 로그인 한 후 리디렉션하는 방법은 무엇입니까?
- 29. 로그인 한 사용자 정보 저장
- 30. oauth2.0 salesforce API를 autheticating 한 후 URL을 통해 계정 정보에 액세스하는 방법은 무엇입니까?
OAuth가 필요한 이유입니다. 사용자가 OAuth를 통해 로그인하여 API에 액세스하게하면 작업중인 사용자를 알기 위해 앞뒤로 전달할 수있는 OAuth 토큰을 받게됩니다. –
크리스, 이것 좀 자세히 설명해 주시겠습니까? 이 http://django-tastypie.readthedocs.org/en/latest/authentication_authorization.html#oauthauthentication은 본질적으로 인증을 요구하여 내 API를 보호하는 것에 대한 것입니다. tastypie에서 JavaScript로 로그인 한 사용자 정보를 얻는 데 어떤 단서가 있습니까? – Arman
죄송합니다. tastypie에 내장 된 OAuth는 소비 지원 만 할뿐, 즉 토큰이 유효한지 확인하지만 OAuth 서비스와 실제로 통신하지는 않습니다. 더 많은 기능을 사용하려면 django-oauth와 같은 자체 OAuth 서버를 구현하거나 Google, Twitter 등과 같은 제 3 자 OAuth 공급자로부터 선택해야합니다. 각 제공 업체는 인증 된 OAuth 세션. –