如何使用PHP从URL获取JSON数据?我的身份验证失败

用户1198411

这是来自美国国家气象局的JSON气象数据的公共URL。

https://forecast.weather.gov/MapClick.php?lat=39.71&lon=-104.76&FcstType=json

如果我输入的URL是浏览器的地址栏(或单击上面的链接),那么我将获得所需的JSON数据。但是我所有使用PHP的尝试(在我的WordPress网站中)都导致身份验证错误。我已经尝试过以下方法的StackOverflow建议:

$json = file_get_contents('url_here');
$obj = json_decode($json);
echo $obj->access_token;

我已经尝试过以下几种方法的StackOverflow建议:

$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, 'url_here');
$result = curl_exec($ch);
curl_close($ch);

$obj = json_decode($result);
echo $obj->access_token;

在所有情况下,我都会收到身份验证错误:

拒绝访问
您无权访问“ http://forecast.weather.gov/MapClick.php吗?” 在此服务器上。

参考号#18.d56775c7.1554244115.21225898

错误消息在“?”处停止的事实 网址中的,让我想知道是否需要通过一种方法来传递PHP参数,而不仅仅是将其附加到网址中。

我假设我不需要身份验证信息(用户名,密码),因为NWS数据是公开的。

建议将不胜感激。

正义

您尝试访问的网站似乎正在使用用户代理。

不用担心,我们可以使用cURL轻松做到这一点:

<?php
    function curler ($url)
    {
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_USERAGENT , "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)");
        $output = curl_exec($ch);
        curl_close($ch);
        return json_decode($output);
    }

    var_dump (
        curler("https://forecast.weather.gov/MapClick.php?lat=39.71&lon=-104.76&FcstType=json")
    );

它将返回您期望在对象中的数据。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用Swift获取未经身份验证的身份

来自分类Dev

如何使用Cognito身份验证我的身份/用户池?

来自分类Dev

使用 nestjs 身份验证时身份验证失败

来自分类Dev

使用 Devise,如何自定义失败的身份验证?

来自分类Dev

从传递身份验证参数的 URL 加载 JSON 数据

来自分类Dev

如何从需要基本身份验证的URL获取src

来自分类Dev

如何从Fitbit Oauth身份验证获取数据

来自分类Dev

如何从需要使用Ansbile进行身份验证的网站上获取一些数据?

来自分类Dev

如何使用Ember简单身份验证获取当前经过身份验证的用户?

来自分类Dev

从我一直在使用的每台ssh服务器中获取“身份验证失败太多”

来自分类Dev

PHP MongoDB身份验证失败

来自分类Dev

如何使用PHP SDK对保管箱帐户进行身份验证并获取文件?

来自分类Dev

如何使用 Python 从带有身份验证密钥的 URL 下载 JSON 文件

来自分类Dev

使用Ruby的Influxdb身份验证失败

来自分类Dev

如何使用AWS身份验证保护我的WCF服务

来自分类Dev

如何从使用身份验证的URL打开PDF?

来自分类Dev

使用基本身份验证时,PHP JSON错误

来自分类Dev

如何使用PHP对Jira API进行身份验证

来自分类Dev

使用HapiJS获取身份验证错误

来自分类Dev

如何使用node.js中的基本身份验证从URL获取用户名和密码?

来自分类Dev

Android如何使用身份验证用户名和密码从以下URL从Web服务器获取响应

来自分类Dev

如何以 URL 编码形式获取用户身份验证令牌并使用 Python 接收 JWT 令牌?

来自分类Dev

Symfony2-我无法使用Gmail邮件传输上班...身份验证失败

来自分类Dev

身份验证失败,输入了正确的密码,现在我不能再使用sudo了

来自分类Dev

我应该使用什么HTTP代码进行第三方身份验证失败?

来自分类Dev

身份验证失败,输入了正确的密码,现在我不能再使用sudo了

来自分类Dev

如果Passport身份验证失败,如何在重定向中保留表单数据?

来自分类Dev

通过TwitterKit / Fabric身份验证失败获取单个Tweet

来自分类Dev

MongoDB-由于身份验证失败,无法使用mongoexport导出数据

Related 相关文章

  1. 1

    如何使用Swift获取未经身份验证的身份

  2. 2

    如何使用Cognito身份验证我的身份/用户池?

  3. 3

    使用 nestjs 身份验证时身份验证失败

  4. 4

    使用 Devise,如何自定义失败的身份验证?

  5. 5

    从传递身份验证参数的 URL 加载 JSON 数据

  6. 6

    如何从需要基本身份验证的URL获取src

  7. 7

    如何从Fitbit Oauth身份验证获取数据

  8. 8

    如何从需要使用Ansbile进行身份验证的网站上获取一些数据?

  9. 9

    如何使用Ember简单身份验证获取当前经过身份验证的用户?

  10. 10

    从我一直在使用的每台ssh服务器中获取“身份验证失败太多”

  11. 11

    PHP MongoDB身份验证失败

  12. 12

    如何使用PHP SDK对保管箱帐户进行身份验证并获取文件?

  13. 13

    如何使用 Python 从带有身份验证密钥的 URL 下载 JSON 文件

  14. 14

    使用Ruby的Influxdb身份验证失败

  15. 15

    如何使用AWS身份验证保护我的WCF服务

  16. 16

    如何从使用身份验证的URL打开PDF?

  17. 17

    使用基本身份验证时,PHP JSON错误

  18. 18

    如何使用PHP对Jira API进行身份验证

  19. 19

    使用HapiJS获取身份验证错误

  20. 20

    如何使用node.js中的基本身份验证从URL获取用户名和密码?

  21. 21

    Android如何使用身份验证用户名和密码从以下URL从Web服务器获取响应

  22. 22

    如何以 URL 编码形式获取用户身份验证令牌并使用 Python 接收 JWT 令牌?

  23. 23

    Symfony2-我无法使用Gmail邮件传输上班...身份验证失败

  24. 24

    身份验证失败,输入了正确的密码,现在我不能再使用sudo了

  25. 25

    我应该使用什么HTTP代码进行第三方身份验证失败?

  26. 26

    身份验证失败,输入了正确的密码,现在我不能再使用sudo了

  27. 27

    如果Passport身份验证失败,如何在重定向中保留表单数据?

  28. 28

    通过TwitterKit / Fabric身份验证失败获取单个Tweet

  29. 29

    MongoDB-由于身份验证失败,无法使用mongoexport导出数据

热门标签

归档