【问题标题】:Api call not working in online web pageApi 调用在在线网页中不起作用
【发布时间】:2013-07-02 14:31:09
【问题描述】:

当我尝试使用以下代码调用以下 api 调用时:

$json = file_get_contents('http://freegeoip.net/json/'.$_SERVER['REMOTE_ADDR']);
echo $json; exit;

它在一个主机上给我响应。

当我在经销商俱乐部托管包站点中尝试相同的 api 时。它也没有加载页面。它给出了连接超时错误。

任何人都可以提出解决方案。

【问题讨论】:

  • 如果它在一个服务器上工作但在另一个服务器上工作,然后开始检查那个不工作的服务器甚至可以到达 api 的服务器。例如它可能被防火墙、黑名单、阻止等。作为一般提示,如果您遇到代码问题,您应该从不使用@ 抑制错误。这相当于把你的手指塞进耳朵里然后说“啦啦啦啦不想听你告诉我问题是什么,我无视你啦啦啦啦”
  • 很可能在调用失败的主机上不允许此类请求。检查你的 php 设置,寻找 safe modeallow_url_fopen...
  • 对不起,这是我的错......在尝试使用@..之后只是复制了上面的相同行

标签: php html api


【解决方案1】:

您的主机可能会阻止传出 HTTP 连接 - 您对此无能为力(除了升级到允许这样做的服务计划)。

还用 @ 隐藏错误消息是邪恶的(恕我直言)

【讨论】:

    【解决方案2】:

    我与服务器人员交谈,他们解决了问题。他们说从我的网站到端口 80 的出站连接在导致问题的服务器中被阻止。

    【讨论】:

      猜你喜欢
      • 2023-01-15
      • 2017-01-17
      • 2021-11-08
      • 1970-01-01
      • 2020-11-04
      • 2023-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多