[javascript] 스크립트 실행을 거부했습니다. 엄격한 MIME 유형 검사가 활성화되어 있습니까?

콘솔에서이 오류가 발생하는 이유는 무엇입니까?

MIME 유형 ( ‘application / json’)이 실행 가능하지 않기 때문에 ‘ https://www.googleapis.com/customsearch/v1?key=API_KEY&q=flower&searchType=image&fileType=jpg&imgSize=small&alt=json ‘ 에서 스크립트 실행을 거부했습니다. 엄격한 MIME 유형 검사가 사용됩니다.



답변

당신은이 <script>일부 외부 자바 스크립트를로드하려고 요소를.

제공 한 URL은 JavaScript 프로그램이 아닌 JSON 파일을 가리 킵니다.

서버가 JSON이라고 올바르게보고하므로 브라우저는 JSON을 JavaScript로 실행하려고하는 대신 해당 오류 메시지와 함께 중단됩니다 (오류가 발생 함).


확률은 이것에 대한 근본적인 이유는 Ajax 요청 을 시도하고 교차 원본 오류가 발생 했으며 jQuery에 JSONP를 사용하고 있음을 알려서 수정하려고 시도했기 때문입니다. 이것은 URL이 JSONP (JavaScript의 다른 하위 집합)를 제공하는 경우에만 작동하지만이 기능은 제공하지 않습니다.

추가 쿼리 문자열 매개 변수 callback=the_name_of_your_callback_function가 있는 동일한 URL은 JavaScript를 반환합니다.


답변

제 경우에는 파일을 찾을 수 없었고 javascript 파일의 경로를 잘못 입력했습니다.


답변

이 결과는 Google에서 처음으로 나타나는 결과이며 여기에서 발생하는 것보다 더 광범위합니다. 다음은 익스프레스 서버에 적용됩니다 .

중첩 된 폴더에서 리소스에 액세스하려고했습니다.

내부 index.html내가했다

<script src="./script.js"></script>

고정 경로가에 마운트되었습니다.

app.use(express.static(__dirname));

그러나는 다음 script.js과 같이 중첩 폴더 에 있습니다. js/myStaticApp/script.js
스크립트 실행을 거부했습니다. meme 유형 검사가 활성화되었습니다.
방금 정적 경로를 다음 과 같이 변경했습니다.

app.use(express.static(path.join(__dirname, "js")));

이제 작동합니다 🙂


답변

Node.js 를 사용하는 경우 express.static () 을 사용하십시오.

정적 자산을 보관하는 디렉토리의 이름을 express.static 미들웨어에 전달하기 만하면 파일을 직접 제공 할 수 있습니다. 예를 들어 이미지, CSS 및 JavaScript 파일을 public이라는 디렉토리에 보관하면 다음과 같이 할 수 있습니다.

즉 : app.use (express.static ( ‘public’));

이 접근 방식으로 문제가 해결되었습니다.

감사,


답변

실수로 js 파일의 이름 .min.min.js


답변

파이썬 플라스크

윈도우 , 그것은 HKCR에서 “콘텐츠 형식”값이 /의 .js가 올바른 MIME로 설정되지 않은 경우 그래서 문제가 발생할 수 입력, 레지스트리에서 데이터를 사용합니다.

regedit를 열고 HKEY_CLASSES_ROOT 로 이동 하여 키 .js / Content Type에 text / javascript 값이 있는지 확인하십시오.

C:\>reg query HKCR\.js /v "Content Type"

HKEY_CLASSES_ROOT\.js
    Content Type    REG_SZ    text/javascript


답변

아래에 표시된대로 코드 조각을 항목 html에 추가합니다. 즉 reactjs의 “index.html”

<div id="wrapper"></div>
<base href="/" />