SSE 权限认证、部署篇

2024-01-22 10:07:38 浏览数 (3)

之前写的SSE在项目中得到应用使用,代替了传统的轮询方式。

但是在实际操作过程中,SSE的确遇到一些问题。

1、部署的时候:NG转发的端口死活不响应!这是NG必须对此接口单独设置处理(主要是为了不影响其他业务接口)

2、认证问题,接口开启拦截器后,默认的SSE请求是不会携带认证信息的。经过GPT4的帮助下:SSE只支持在URL参数中携带认证信息,(前端默认是)不支持 reques Header 放置内容!所以这是SSE在真正应用时的缺点!

下文是NG配置SSE接口

代码语言:javascript复制
location /SSE接口路径 {
		# 代理设置
		proxy_pass http://abc.com:9527; # 你的后端服务器地址
		proxy_set_header Connection '';
		proxy_http_version 1.1;
		proxy_buffering off;
		proxy_cache off;
		# 超时设置
		proxy_read_timeout 24h;
		proxy_connect_timeout 24h;
		proxy_send_timeout 24h;
		# CORS设置 - 根据需要调整
		add_header 'Access-Control-Allow-Origin' '*' always;
		add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS' always;
		add_header 'Access-Control-Allow-Headers' 'Origin, X-Requested-With, Content-Type, Accept' always;
		if ($request_method = 'OPTIONS') {
			return 204;
		}
	}

特殊说明: 上述文章均是作者实际操作后产出。烦请各位,请勿直接盗用!转载记得标注原文链接:www.zanglikun.com

0 人点赞