저는 패키지 된 Firefox OS 응용 프로그램을 작성하는 팀의 구성원입니다. 파이어 폭스 OS 권한이 응용 프로그램에 대한 제한 CSP 정책에 나는 응용 프로그램의 본체에 NG-CSP 지시어를 추가했습니다 인해 :Angular JS ng-csp 지시문을 사용하여 권한있는 Firefox OS 응용 프로그램 만들기
이<body ng-app="the-app" ng-csp>
파이어 폭스 OS 권한이 응용 프로그램에 대한 CSP 사양은 다음과 같습니다 default-src *; script-src 'self'; object-src 'none'; style-src 'self' 'unsafe-inline'
Firefox OS 장치 Angular에서 얻을 수있는 로그에 따르면 eval() 또는 Function() 생성자를 호출하는 것으로 보이며 둘 다 Firefox OS 권한있는 응용 프로그램에서 차단되고 응용 프로그램은 단순히 렌더링을 중단합니다.
이것이 예상 된 동작인지, 알려진 문제인지 또는 지침을 잘못 적용했는지 알고 싶습니다.
누구나 비슷한 문제가 있습니까?
미리 감사드립니다.
각도 버전 : 1.0.1
오류 로그 :
05-07 19:31:10.048: ERROR/GeckoConsole(1397): [JavaScript Error: "CSP ERROR: Couldn't parse invalid source 'unsafe-inline'"]
05-07 19:31:10.048: ERROR/GeckoConsole(1397): [JavaScript Warning: "CSP WARN: Failed to parse unrecognized source 'unsafe-inline'"]
< - 손실 된 CSS 태그 ->
05-07 19:31:13.892: ERROR/GeckoConsole(1397): [JavaScript Error: "Error: call to Function() blocked by CSP" {file: "app://788ceebd-a9b7-4a98-a8b0-1ff248e40f52/scripts/vendor/d10639ae.angular.js" line: 6337}]
05-07 19:31:13.912: ERROR/GeckoConsole(1397): [JavaScript Warning: "CSP WARN: Directive eval script base restriction violated" {file: "app://788ceebd-a9b7-4a98-a8b0-1ff248e40f52/scripts/vendor/d10639ae.angular.js" line: 6337 column: 0 source: "call to eval() or related function blocked by CSP"}]
CSP는 또한 인라인 CSS 나 자바 스크립트를 허용하지 않습니다 게시물에 대한 링크는 다음과 같다. Eval은 물론 허용되지 않지만 CSP 모드에서는 각도가 eval()을 사용하지 않아야합니다. 인라인 CSS/js를 사용하지 않는 것이 최선의 방법인지 확인하십시오. –
몇 가지 추가 정보. 필자는 ng-csp 지시어를 사용하거나 사용하지 않고 응용 프로그램을 배포하려고 시도했지만 Firefox OS 지시문을 사용하지 않으면 eval() 호출이 차단되었다고 명시 적으로 말합니다. 위의 경우 ng-csp를 사용하면 "CSP에 의해 차단 된 Function() 호출"오류가 발생합니다. 내 질문은 안전 모드에서조차도 각도는 기능을 사용하여 마술을합니다. – Ltmatos