3.4 wordpress调用dify api的坑点 3.4.1. wordpress 连接 dify api 的坑点 在使用 wordpress 插件调用 dify api 时,一度出现如下错误提示: 反复调试和查阅资料后,发现是因为不同的 docker 环境之间,网络不互通的问题导致: 在 WordPress 的 Docker 容器中,localhost 指的是容器本身,而不是宿主机。因此,当你尝试从 WordPress 容器内部访问宿主机上运行的 API 服务时,会出现连接失败的错误。 解决方案是,使用宿主机的 IP 地址: 在 WordPress 容器中,将 API 的 URL 从 http://localhost:8082 改为 http://host.docker.
在使用 wordpress 插件调用 dify api 时,一度出现如下错误提示:

反复调试和查阅资料后,发现是因为不同的 docker 环境之间,网络不互通的问题导致:
检查网络连接: 如果使用 Docker Compose,确保 WordPress 和 API 服务在同一个网络中。 在 WordPress 容器中使用 curl 或 telnet 命令测试与 API 服务的连通性: 例如:curl http://api-service:8082(假设 API 服务的容器名为 api-service)。
在 WordPress 的 Docker 容器中,localhost 指的是容器本身,而不是宿主机。因此,当你尝试从 WordPress 容器内部访问宿主机上运行的 API 服务时,会出现连接失败的错误。
解决方案是,使用宿主机的 IP 地址:
如果想手动测试 wordpress 和 dify api 的连通性,可以点击 wordpress->Terminal:

通过 curl 指令测试访问 api 的网络是否通畅:

测试指令代码如下:
curl -X POST 'http://host.docker.internal:8082/v1/completion-messages' \ --header 'Authorization: Bearer app-Oetcpd0AIpMFBBnKM3BbKpNV' \ --header 'Content-Type: application/json' \ --data-raw '{ "inputs": {"content": "美丽中国"}, "response_mode": "blocking", "user": "abc-123" }'
如果连通性没问题,则应当可以返回如下图所示的结果:
