nodejs+express解決跨域問題,發現網上的大部分都是誤導人,花了不少時間,終於弄懂了,
我在vue+nodejs+express+mongodb的項目里面,發現本地用vue代理正常調用遠程的nodejs api接口,但是放在雲服務器上之后,就出現了跨域問題,因為vue代理在線上已經無效了。
在nodejs的express里的app.js添加全局路由,即可解決vue線上項目的跨域問題,如下:

res.header("Access-Control-Allow-Origin", " * ");,這個就會報以下的錯誤:

res.header("Access-Control-Allow-Credentials", "true");,如果沒有這段代碼,解決跨域就無效,一定要加上,注意true是字符串:

res.header("Access-Control-Allow-Headers", "Content-Type,username");,這是req.headers的字段,比如username,一定要用,逗號隔開,若沒有加上前端傳過來的headers里的username會報以下錯誤:

