adsense728x90


chrome extension을 만들 때, angularjs를 쓰려면 Web frontend






By adding hosts or host match patterns (or both) to the permissions section of the manifestfile, the extension can request access to remote servers outside of its origin.

{  "name": "My extension",  ...  "permissions": [    "http://www.google.com/"  ],  ...}

처음 개발할 땐,

http://*/ 
도 좋겠다.

spring security를 써서 인증을 구현했을 땐,
cookie 정보만 갖고서 로그인은 되지만, 또 cross domain문제가 생긴다.

http://<url>/spring_security_login
로 redirect가 발생하므로, 이 url도 permissions에 추가해야 되나 보다.

angularjs를 쓰려면,

"content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'"

"content_security_policy": "script-src 'self' 'unsafe-eval' https://ajax.googleapis.com; object-src 'self'",



현재 tab의 url, title 알아내기
        chrome.tabs.getSelected(null, function(tab) {
            console.log(tab.id + tab.url + tab.title);
            tabId = tab.id;
            $scope.url = tab.url;
            $scope.title = tab.title;
            $scope.$apply();
        });
마지막에 $apply()를 불러줘야 적용이 됐다.


chrome extensions의 얘기

chrome://extensions/
에서 local 확장프로그램을 설치할 수 있다.
zip으로 압축하지 않고도 가능.
소스를 고치고, 설정 화면에서 새로고침을 하면, 다시 불러 온다.



debugging하기



popop.html 뜬 화면에다가 오른쪽 버튼 클릭해서 요소 검사를 하면, inspector가 새 창으로 뜬다.


angularjs만의 얘기



controller 함수를 못 찾을 땐, module 이름을 html에 잘 지정했는지 확인하기


jquery $.ajax 같은 방식으로 
angularjs 에서 form을 post하려면,
2가지 방식이 있는 것 같다.


            $http({
                    method: 'POST',
                    url: 'http://izeye.cafe24.com/organizeme/content/add',
                    transformRequest: function(obj) {
                        var str = [];
                        for(var p in obj)
                            str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p]));
                        return str.join("&");
                    },
                    data: {
...
                    },
                    headers: {'Content-Type': 'application/x-www-form-urlencoded'}
                }
            )

그런데, unicode encoding이 망가지는 것 같다.
headers: {'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'}
UTF-8까지 붙이면 안깨지는 것 같다.

web development 강의 보기


시작 날짜부터 2주간 무료


무료


덧글

댓글 입력 영역