使用Google负载均衡器在OPTIONS或DELETE请求中发出请求正文

时间:2016-03-16 23:31:26

标签: load-balancing google-cloud-platform

我的服务器端设置是这样的:我有一个运行nodejs服务器的谷歌计算引擎实例。它位于https负载均衡器后面。

所以问题是如果OPTIONS类型请求与body(有效负载)一起发送到负载均衡器ip,它有时会失败502.我已经检查过所有这些请求,节点服务器正在返回并记录正确的响应。如果请求体留空,它的工作原理很完美。

然而,当我直接点击GCE的IP时,无论是否有请求正文,它都能正常工作。

例如 这是负载均衡器ip(启用了ssl)

选项https://130.211.14.60/health

这是直接GCE机器ip(没有ssl)

选项http://104.199.159.212:8002/health

我已经使用Postman应用程序多次发送请求(几百次)进行检查。

此问题仅适用于DELETE和OPTIONS类型请求。 GET / POST / PUT完美无缺。

有没有人可以指出我的问题是什么以及如何解决它。

2 个答案:

答案 0 :(得分:1)

来自Google的文档 -

  

HTTP(S)负载均衡器不支持将带有正文的HTTP DELETE发送到负载均衡器。此类请求将收到错误消息:错误400(错误请求)!!您的客户发出了格式错误或非法的请求。仅支持没有实体的DELETE请求。

更多信息here

答案 1 :(得分:1)

Google 负载均衡器现在支持此功能,该负载均衡器于 18 年 12 月发布。

更多信息here