2016-11-07 3 views
1

VueJs 및 새로 고침 페이지에 질문이 있습니다. 특정 URL (예 :/tag/1)로 내 VueJs 응용 프로그램을 새로 고치면 "잡히지 않은 구문 오류 : 예상치 않은 토큰 <"오류가 발생합니다. 내 서버가 NodeJs로 만들어졌으며 ExpressJs를 사용합니다. 내 템플릿 엔진은 EJS입니다. 가 나는 경로 정의 :VueJs 2, NodeJs 및 다시로드 페이지

app.get('*', (request, response) => { 
    response.render('layouts/index') 
}) 

ExpressJs에 대한 문서에서를, 그것은 아파치의 "htaccess로"를 대체하기 위해 "연결-역사-API-대체의"플러그인을 사용하는 것이 가능하지만이 작동하지 않을 수 있습니다.

let app = express() 
app.use(history({ 
    verbose: true, 
    index: '/' 
})) 

무엇이 문제입니까? 클라이언트 응용 프로그램 (vue.js가) 어떤 유효한 JSON 객체를받을 것으로 예상되기 때문이 일어나고 있지만 서버가 HTML 페이지를주고있다

답변

0

감사합니다.

<html><head>...과 같은 일부 문자열을 javascript 객체로 변환하려고하면 JSON 구문 분석기가 실패하고 그 오류가 발생합니다. 로컬이 복제 개발자 콘솔을 열고 다음 명령을 실행하려면 :

JSON.parse("<html></html>") 

밖으로 정확히 무슨 일이 잘못 찾으려면을, 당신은 개발자 콘솔의 네트워크 탭에보고 API에 대한 서버 응답을 볼 필요가 요청 - JSON이 필요하지만 서버가 제공 될 것으로 예상 함 index.html

서버 측이 모두 좋으며 API 요청을 예상대로 처리한다고 가정하면 vue 구성 요소에 간단한 오류가있을 수 있습니다. /api/tag/1에서 태그 데이터를로드하는 대신 유효한 JSON 문자열을 가져 오는 경우) /tag/1을로드하려고 시도했을 수 있습니다 (index.html).