纯静态ajax 跨域请求nginx解决方案

本文介绍了一种使用Nginx作为代理服务器解决前端HTML页面通过jQuery AJAX请求后端接口时遇到的跨域问题的方法。通过配置Nginx实现本地静态资源与后端API在同一端口下共存,并设置跨域响应头。

1、写这篇主要帮新手前端闭坑下。

2、纯html页面引入jquery 的ajax访问后端接口时难免跨域,要配置那些七七八八,而且后端还不一定配合。

解决方案

1、去下nginx。其实window安装nginx很简单的,去下个第三方集成环境,博主用的UPUPW ANK,自行百度。免费的。下一步下一步就安装完了。然后打开面板,

 这边有一个nginx,先别急着点。

1、右键属性找到安装目录,右上角 搜索搜nginx ,用编辑器打开nginx.conf

配置如下,记住   ,你的静态html文件和接口/media要放在同个端口下。 

server {
			listen       8050;
			server_name  localhost;
			add_header Access-Control-Allow-Origin *;  # 允许跨域
			#charset koi8-r;
			#access_log  logs/host.access.log  main;
			location / {
				root   E:/work/web/;#静态html项目的地址
				index  index.html index.htm index.php;
				 autoindex  off;
			}
			location /media/ {
				add_header 'Access-Control-Allow-Origin' '*';
				add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
				add_header 'Access-Control-Allow-Headers' '*';
				add_header 'Access-Control-Expose-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range';
				proxy_pass http://192.168.100.30:8082;
			}
		}

 然后你就可以访问localhost:8050直接访问静态页和请求了

$.ajax({
		url:"http://localhost:8050/media/ad/plan/list?isReceive=1",
		type:"get",
		data:{
			
		},
		success:function(res){
			debugger
		},
		error:function(err){
			debugger
		}
	})

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雪狼之夜

打个赏,让博主知道博文没白写

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值