gpt4 book ai didi

java - Web服务不接受 postman 的获取请求

转载 作者:行者123 更新时间:2023-12-03 03:23:06 25 4
gpt4 key购买 nike

我在本地计算机上创建了一个基于 java 的进程,将其发布为 Web 服务并部署在 azure 上的 Linux VM 上。打开所需的端口并提供私有(private) IP 10.0.0.4 作为托管 Web 服务的端点。

将执行哪个Web服务的进程具有读/写/执行权限。

执行来自 Web 服务的批处理文件以打开其余端点以获取请求。

我在与 Linux VM 相同的网络内的 azure 上创建了另一个 Windows VM。两个虚拟机都能够互相 ping 通。

当我向 webservice API 发送 GET 请求时,收到错误

Http Error 403:The IP address/hostname is not allowed

或者,我从 Windows VM 托管 Web 服务,并使用 localhost 启动端点,在同一 VM 的 Postman 上进行测试,并且运行顺利。

问题:为什么 Windows VM 上的 postman 无法向 Linux VM 上的 webservice 发送 GET 请求?当我运行curl http://10.0.0.4时,我明白

curl: (7) Failed to connect to 10.0.0.4 port 80: Connection refused

我在/etc/hosts 文件中添加了 10.0.0.4:10.0.0.4

请帮忙。

最佳答案

  • 如果您的 Web 服务可通过与 Postman 不同的域或端口访问,则配置 CORS 以允许来自不同来源的请求。要接受来自 Postman 的请求,请在 Web 服务的响应中包含正确的 CORS header 。
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: GET, POST, PUT, DELETE
Access-Control-Allow-Headers: Content-Type
  • 确认您的 Windows 虚拟机的 IP 地址有权访问 Linux 虚拟机上的 Web 服务。 enter image description here
  • 验证您的 Web 服务是否在 Linux 虚拟机上正确设置以监听专用 IP 地址 (10.0.0.4)。确保 Web 服务可从虚拟机本身内部使用,并绑定(bind)到正确的 IP 地址和端口。

When I send GET request to webservice API , I receive the error.

只需尝试测试curl 命令来检查Web 服务是否接受Linux VM 本身上的GET 请求。 curl http://localhost

  • 尝试通过更改 Linux VM 中的端口进行检查。 enter image description here

关于java - Web服务不接受 postman 的获取请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76414636/

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