cors跨域问题

cors套件

使用nginx

  • nginx
    • 前端:moa-frontend
      • public下面的采用nginx做反向代理
      • 其他的采用express+jade精简代码(ajax与后端交互)
    • 后端
  1. server {
  2. listen 8000;
  3. server_name localhost;
  4. error_page 500 502 503 504 /50x.html;
  5. location = /50x.html {
  6. root html;
  7. }
  8. location / {
  9. proxy_redirect off;
  10. proxy_set_header Host $host;
  11. proxy_set_header X-Real-IP $remote_addr;
  12. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  13. proxy_set_header Host $http_host;
  14. proxy_set_header X-NginX-Proxy true;
  15. proxy_pass http://127.0.0.1:3010;
  16. proxy_redirect off;
  17. }
  18. location /api {
  19. proxy_set_header X-Real-IP $remote_addr;
  20. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  21. proxy_set_header Host $http_host;
  22. proxy_set_header X-NginX-Proxy true;
  23. proxy_pass http://127.0.0.1:3005;
  24. proxy_redirect off;
  25. }
  26. }

nginx默认是80端口,所以//api 是同源的.

这其实也是前后端分离比较好的实践。

浏览器上

For OSX,终端里

  1. $ open -a Google\ Chrome --args --disable-web-security

For Linux :

  1. $ google-chrome --disable-web-security

如果你也想尝试去访问本地文件,用于开发,比如ajax或json,你也可以用下面这个flag

  1. -–allow-file-access-from-files

For Windows

  1. chrome.exe --disable-web-security