메일에 지도를 첨부해야 할 일이 생겼다. 그래서 iframe을 이용해 Google Map을 임베딩 하는 코드를 사용해 봤다.
결과적으로 Mozilla Thunderbird, Microsoft Outlook, Gmail 등에서 지도가 보이지 않았다. Thunderbird에서는 지도가 아주 아주 아~~~~주 잠깐 보이다가 사라져버린다. iframe자리에는 공백만이 보였다. 단지, 사내에서 쓰는 웹메일만 지도를 보여주더라.
이유가 뭘까?
너무나 오랫동안 고민했었지만 결국 해결을 하지 못 했다.
사실 원인은 너무나 명확하다. iframe이나 javascript같이 외부 컨텐츠를 삽입하거나 조작할 수 있는 기능은 보안상의 문제로 MUA(Mail User Agent)에서 막고 있는 거다. 안그래도 보안상 이슈로 '메일 열어볼 때 조심하셈' 이라는 캠페인이 제법 많은 시절이다.
결국 위에 지도가 보이지 않은 MUA들은 정말 제대로 된 MUA라는 거다. iframe이 그냥 보이던 웹메일이 엉터리라는 말이다.
...
해법을 하나 제시해 보자. iframe 형태가 아니라 img 형식이면 아마도 되겠지. 이를 위해서 Google Static Maps API 라는게 존재한다. 고마운 일이다.
ps. Mail User Agent라는 말이 좀 구식인 것 같기도 하다. 그냥 메일 클라이언트 라고 해도 된다. -_-;;
Popular Posts
-
node.js 는 비동기(asynchronous) 모델의 코딩을 하기 쉽도록 디자인 되어 있다. 하지만 그렇다고 무작정 쉽게 코딩이 가능한건 아니다. 기존의 동기화 기반의 멀티스레드 모델을 코딩 했거나 함수나 메서드 등의 리턴값을 이용해 로직을 작성하...
-
예전에 Vim에서 tags 파일 경로를 부모 디렉토리들로 지정해서 자동으로 태그를 지정하는 방법 을 포스팅 했던 적이 있다. 하지만 Emacs에서는 동일한 형태로 지정을 해서 사용하는게 안되었다. 이런 기능을 원했지만 검색으로 찾을 수는 없었다. ...
-
내 나이대도 이제는 젊다고 하기에는 힘든(?) 수준으로 치닫고 있다. 세월의 흐름이 너무 빨라서 아쉽고 벅차고 숨차기는 하지만, 이럴 때 일 수록 추억을 떠올려 보면 나름 재미있는 세월을 보냈구나 생각이 든다. 이참에 옛날 옛적에 쓰던 구식 컴퓨터...
-
특정 사유로 특정 코드를 특정 시간 이후에 실행시켜야 할 경우가 있다. 이유야 어쨌든, 이렇게 특정 시간(딜레이, Delay) 이후에 코드를 실행시키도록 하는 코드를 알아보자.
-
Q. 1.3과 1.12 중 어느 버전이 더 최신 버전인가요? A. 1.12가 더 최신버전입니다. 위의 같은 질문류를 커뮤니티에서 본 적이 있는데 놀랍게도 1.3을 1.12보다 더 높은 버전으로 생각하는 사람이 많은 것 같았다. 그래서 이번에는 버...
-
Python 코딩하면서 겪게 된 실수를 한번 정리해 볼까.
-
이번 글은 굉장히 유명한 수학 함수 3가지를 적어보는 글입니다. 그리고 오랜만에 구어체가 아닌 존대말(?)로 쓰는 글이기도 하겠네요. 이번에 언급하는 함수 세 가지, 즉 ceil(), floor(), round() 함수는 C 언어 시절부터 쓰이...
-
전처리기(Preprocessor)란 말은 C나 C++에서 쓰이는 의미와 동일하다. 컴파일 타임 시 처리되는 특수한 구문으로 #으로 시작되는 명령어이다. 심지어 문법도 비슷하다. 하지만 심각한 차이점도 있다보니 별도로 메모를 해 두는게 좋을 것 같아서 ...
-
AppKit 을 활용해 만든 macOS 용 앱 윈도우의 크기와 위치를 보존하려면 autosave 이름을 지정해 주면 된다.
Tags
Blog Archive
-
▼
2011
(273)
-
▼
2월
(39)
- 커맨드키(애플키)의 존재의 정당성!??
- MacPorts 기본 사용법 정리
- [Vim] Vim 설정 파일(vimrc) 및 플러그인 공유
- [iOS/Three20] TTNavigator with UITabBarController
- [iOS/Three20] TTTableViewController 의 기본
- [iOS/Three20] JSON Parser: extThree20JSON
- [iOS/Three20] TTNavigator 기초
- [iOS/Three20] Add to Project
- [Vim] ucs-bom, BOM(Byte Order Mark)
- [Emacs] Emacs 설정 파일 재로딩: reload-dotemacs
- [Emacs] anything.el
- [Python] Regular Expression API (정규표현식 API 기본)
- [Python] Directory(Folder) / File 목록 다루기
- SimpleNote + SimpleNote App + MarkDown으로 글 쓰기
- [Python] Dictionary 기본
- [Django] Unit Test 기본 정보
- [Python] 가끔 저지른 실수들
- [Vim] 윈도우에서 UTF-8을 적용하면 한글메시지가 깨지더라
- [Vim] OS 별 Vim 설정을 분리하기(?)
- [Vim] CTags를 이용한 코드 탐색에 관하여
- [Vim] Auto Word-Completion에 관한 설정
- [Vim] Configuration to Edit Multiple Files
- [Util] screen 기본 사용법 메모
- [Django] Query 명령어 (일부만) 메모
- [Vim] Plugin: snipMate - TextMate-style snippets f...
- [Vim] Plugin: FuzzyFinder
- [Java] Python의 string.split()은 어떻게?
- [Android/Java] Run shell command
- 폭풍 업데이트!
- [Python] struct 와 padding 에 대한 잡설
- SIGSEGV 란 용어에 대해
- [Django] 500 Error Page
- Mail User Agent에서는 iframe를 배척하는 걸까 (잡설)
- [Python] Log Detailed Exception
- [Python] Send mail attached HTML via sendmail
- [Python] Auto-Machine(?) APIs
- [Python] Logging
- [Python] Unicode/UTF-8
- [Django] Multiple Unittest Files
-
▼
2월
(39)
0 comments:
댓글 쓰기