gpt4 book ai didi

Azure 应用程序网关在来自 APIGEE 时对请求正文进行 strip 化

转载 作者:行者123 更新时间:2023-12-03 03:38:52 26 4
gpt4 key购买 nike

当 APIGEE 尝试访问作为集成了应用程序网关的功能应用程序部署在 Azure 中的 API 时,但当请求到来时,它会剥离请求正文。结果我们收到 400 个错误请求,我们不知道这里发生了什么,欢迎任何帮助

最佳答案

• 根据您的解释,您正在向 Azure 中部署函数应用程序的应用程序网关发送 POST 请求。因此,当来自 Apigee 的请求到达应用程序网关端点时,请求正文中的信息会被吃掉或消失。仅特定 API 代理才会发生这种情况,在这种情况下,发送的 apigee 请求会考虑将应用程序网关部署为 Not Acceptable API 代理。因此,我请求您采取以下步骤:-

a) 使用 NGINX/Wireshark 日志发出 API 请求时收集 TCP 转储,并对其进行分析以确认目标端口为 443

b) 检查从消息处理器发送到后端服务器的任何消息,并检查日志中如下所示的任何消息:-

  [Unencrypted HTTP protocol detected over encrypted port, could indicate a dangerous misconfiguration.]

c) 如果目标服务器定义是在没有“SSLInfo”部分的情况下创建的,则会在日志中遇到上述消息。然后update the target server definition with the correct ‘SSLInfo’ section to make it secure .

d) 然后重新启动 apigee 以及 Azure 端的“消息处理器”以获取目标服务器的最新定义。

e) 另外,检查 encoding specified in the HTTP request header ‘Content-Encoding’ is valid or not and the payload format sent by the client as a part of the HTTP request matches the encoding format specified in the ‘Content-Encoding’ header or not 是否.

• 您遇到的错误是上述情况造成的。因此,您可以通过sending the request header as Content-Encoding:<payload format> and the request payload also in the same format解决该问题。 。下面给出了执行相同操作的示例:-

  curl -v "https://HOSTALIAS/v1/testgzip" -H "Content-Encoding: gzip" -X POST -d @request_payload.gz

有关上述内容的更多详细信息,请参阅下面的文档链接:-

https://docs.apigee.com/api-platform/troubleshoot/runtime/400-decompressionfailureatrequest

关于Azure 应用程序网关在来自 APIGEE 时对请求正文进行 strip 化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72228925/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com