Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python AWS ECS服务HTTP请求未重定向?_Python_Http_Http Redirect - Fatal编程技术网

Python AWS ECS服务HTTP请求未重定向?

Python AWS ECS服务HTTP请求未重定向?,python,http,http-redirect,Python,Http,Http Redirect,因此,我在ECS上部署了一个服务,我正在尝试使用以下代码向该服务发送HTTP请求: connection = http.client.HTTPConnection(url) rawRequest={ "BotAlias": "botName", "UserID": "user", "AudioFile": base64.b64encode(audio).decode("utf-8") } data = json.dumps(rawRequest) connectio

因此,我在ECS上部署了一个服务,我正在尝试使用以下代码向该服务发送HTTP请求:

connection = http.client.HTTPConnection(url)

rawRequest={
    "BotAlias": "botName",
    "UserID": "user",
    "AudioFile": base64.b64encode(audio).decode("utf-8")
}

data = json.dumps(rawRequest)

connection.request("POST", "/service-path/protobuf-call",
                   data, {"Content-type": "application/json"})

response = connection.getresponse()
print(response.read())


return json.loads(response.read().decode()) 
my ALB的端口80的规则是重定向到端口443,状态代码为HTTP_301。
对于端口443,我有一个默认规则,根据请求的路径重定向到每个服务的目标组。然而,当我实际运行该服务时,我一直得到301作为响应,而不是我所寻找的lex-bot响应。有什么想法吗?提前谢谢

我通过使用HTTPS而不是HTTP解决了这个问题。

这个问题实际上与AWS负载平衡器或Lex无关。Python代码只是获取它收到的第一个响应,而不是查看301重定向响应并向重定向位置发出另一个响应。如果您只需将应用程序配置为始终在端口443处使用HTTPS,显然会更高效(减少网络流量),但如果您希望代码处理重定向,则应搜索“Python跟随重定向”。可能重复