Angular + Node + Express:带sendFile方法的意外标记

我有点卡在这里。 我在客户端使用Angular 4编写Web应用程序,在服务器端使用Node / Express / Mongo编写REST API,并使用Auth0 API进行validation。

在服务器端,我提供静态文件和所有路由到Angular:

const distDir = __dirname + "/dist/"; app.use(express.static(distDir)); app.get('/*', function(req, res) { res.sendFile(path.join(__dirname + '/dist/index.html')); }); 

没有提供所有的Angular应用程序的app.get方法,我得到一个404错误(例如不能GET /callback)。

问题是sendFile发送一个html文件,无论调用什么。 在我的应用程序中,第一次调用的是js文件,如“networking”选项卡(auth0.min.js)中所示。 所以我得到这个错误:

 ERROR SyntaxError: Unexpected token < in JSON at position 0 at JSON.parse (<anonymous>) at e.CPp0.t.json (vendor.b69a8a4fa217eba4fba0.bundle.js:1) at e.project (main.0e8acae237e497f792ab.bundle.js:1) at e._next (vendor.b69a8a4fa217eba4fba0.bundle.js:1) at e.T14+.e.next (vendor.b69a8a4fa217eba4fba0.bundle.js:1) at XMLHttpRequest.s (vendor.b69a8a4fa217eba4fba0.bundle.js:1) at e.invokeTask (polyfills.043084ca495430fc14f3.bundle.js:1) at Object.onInvokeTask (vendor.b69a8a4fa217eba4fba0.bundle.js:1) at e.invokeTask (polyfills.043084ca495430fc14f3.bundle.js:1) at r.runTask (polyfills.043084ca495430fc14f3.bundle.js:1) 

我想authentication需要parsing一些json文件,但sendFile方法发送HTML。 我无法解决这个问题。 有人能帮我吗 ?