2012-06-14 6 views
1

socket.io와 함께 nodeJS 테스트 스크립트를 실행하려고하는데 javascript를 포함하려고하면 서버에 배포 된 스크립트로 인해 오류가 발생합니다.JavaScript가 nodeJS 서버에서 오류를 발생합니다.

내 로컬 호스트에서 nginx를 통해 HTML을 호출해도 오류가 발생하지 않습니다.

내 index.html을 수 있습니다 :

<!DOCTYPE HTML> 
<html> 
<head> 
    <meta charset="UTF-8" /> 
    <title>NodeJS Realtime Test</title> 
    <script type="text/javascript" src="/client/app.js"></script> 
</head> 
<body> 
    <p>Moin!</p> 
</body> 
</html> 

이는 app.js의 내용이다 :

Uncaught SyntaxError: Unexpected token < app.js:1 

에서 :

console.log("test"); 

크롬이 저에게이 오류가 발생합니다 오페라, 오류 :

Syntax error at line 1 while loading: expected expression, got '<' Linked script compilation app.js 

디버거에서 내 index.html 파일의 char 하나에 오류가 발생했음을 보여줍니다. 여기에 내가 무엇이 있습니까?

+1

Chrome의 오류는 index.html이 아닌 _app.js_의 1 행을 가리 킵니다. 브라우저에서 (또는 Chrome의 개발 도구를 사용하여) 파일을 열고 '/ client/app.js'파일이 어떻게 보이는지 살펴 보았습니까? –

+0

참으로. 서버의 app.js를 열면 index.html의 내용이 표시됩니다. 따라서 오류를 일으키는 것은 서버 구성입니다. socket.io 예제에서 가져 왔습니다. – McFarlane

답변

1

Jani Hartikainen의 의견 덕분에 nodeJS 서버의 구성이 잘못 되었음이 확인되었습니다.

예제에서는 서버의 모든 요청에 ​​대해 index.html 서비스를 사용했습니다. 이 구성을 사용하면 작동합니다 : https://gist.github.com/701407

관련 문제